January 1988
TS2068 UP DATE
the user's NEWS
EXTRA
MEMORY
(3
TS-2068 UP-DATB
1317 Stratford Ave, Panama City, FL 32404
<904 871 4513)
The Extra Memory Section
Do we Need Extra Memory?
Good question, especially now that disk drives
are on the scene for the TS-2068, A Disk Drive is
actually a "box of extra memory". The problem Is,
one has to place the data from disk INTO the TS-2068
memory chips for ft to be used. So, that means that
we are limited by the FREE memory of the TS-2068 as
to the LENGTH of the program that it can handle*
FREE MEMORY Is 38652 bytes. Now If we flM up that
memory with a program, there is no space left for
DATA to be stored, so we have to reserve an amount
of FREE to handle data that wi II be generated by the
program. Usually the trade off is about 50-50.
Then a program will take up about 19K and there will
be an equal amount of space reserved to store and
manage data,
19K of memory Is OK for games and trivia but
lacking to store extensive software programs. Also,
19K is a bothersome limit upon the amount of data
that can be stored. There should be a way of
"stretching" FREE memory so that longer and more
useful programs can be operated and still have
enough FREE memory for data. THERE IS! We can use
the DOCK BANK for programs and the HOME BANK for
DATA, We can put a 64K program In the Dock Bank,
and keep almost all of the 38K of FREE memory for
data storage and management. This capability of the
TS-2068 has been neglected and f&m realize the
Increase in power that the use of EXTRA MEMORY BANKS
offer. Let me put it this way. If you give me
twice as much memory storage to store PR0GRAMMINK3, I
can give you TEN times as much software power,
A software program is built with "kernel
routines", packages of programming Hiat are used
over and over by different elements of the program.
As program length increases there Is less need to
create new kernel routines, and the programming
becomes quite cryptic, using mostly "GO TO and GO
SUB" within the program lines. Also, it is not
necessary to create new variables. Then one more
"K" of programming can produce functions that would
require as much a 5 or 6K of programming to produce
without the kernel cells. So then, picture the
Increased capability that results from using 64K of
memory for a program In the dock bank, as versas the
ordinary limit of 19K! Then, the FREE memory of
38652 bytes Is available for DATA management and
storage.
THE LONESOME DOCK: In the beginning TImex
started producing Dock Cartridges with programs.
These were mostly games I ike "F I ight Simulator",
good games but soon tiring. Since then few
Industries have produced software in cartridges. As
a result, the Dock Door is hardly ever lifted, and
the capability has languished. One reason for that
Is the cost of producing both the cartridge and the
software In EPROM, A reasonable price for a good
Dock Cartridge software would be around $60^00^ +00
expensive for our tastes, and the reason for our
Ignoring the Extra Memory functions. One other
reason Is the tricklness of programming required for
using extra memory. But, IS It all that tricky?
And, CAN WE LEARN HOW?
Ordinarily/ publications must reserve their
page space to cover many subjects, and the detail ed
continuous coverage of one subject cannot be
attempted, UP-DATE will undertake to bring you
detailed and continuous coverage of EXTRA MEMORY In
this section. We start In this Issue with The
Concepts Of EXTRA MEMORY PROGRAMMING, We w 1 1 1
progress through the detal Is of programming In extra
memory banks, Non Vol atl I e Ram> the use of EPROM
Cartridges, Programming EPROMS, the use of RAM DISK,
and the use of Disk Drive to support extra memory
programs. This Issue also brings an article In the
Technical Section about converting a TS-1000 64K RAM
to a DOCK Memory board, Programml ng wl 1 1 be gi ven
In both BASIC and In Machine Code, starti ng in easy
to understand basics.
There are people who are Intense! y Interested
in this subject and have done some fantastic thingsv
Mr, Craig Davis Is engaged in transferring the Smart
Text software to run In Dock Bank EPROM,
coordinating disk drive for both screens and memory
storage. Hopefully he will tell us about It In a
future article, I will be discussing the use of RAM
In Extra memory, Mr, Larry Kenny (Larken
Electronics) can tel I us things about RAM DISK.
And, Mr, Eric Johnson has promised •* a construction
article on Extra Memory RAM, If you have done any
work In this area, UP-DATE wi 1 1 publ ish your
articles. New user I nterest wll I bring new product
development. Lets take extra memory "to the limit"!
January 1988
Jan. 1988 Eailorial
HI, you TS-2068 Die Hards! Die? Heck, I'll be
using my '68 till they back up the hearse to my
widow's door. This January 1988 Issue of UP-DATE
brings In some new writers, new to UP-DATE, but not
new to the TS-2068 user groups, I'll give you a
short Introduction to each of these outstanding
writers at the end of their columns. They are
successful business peopi e whose time Is val uabi e,
but still they find time to contribute their
knowledge FREE, We can show appreciation by a card
of thanks. Also, this Issue begins new building
block sections about Extra Memory, Larken Disk,
Aerco Disk, and Telecomputing, These sections will
build as more Issues are published, Hope you like
the direction that UP-DATE is 'a goln.
UP-DATE will let our writers "hang It all out",
praising the systems that they like. Enthusiasm
unbounded! All of our disk systems are good, each
having Its own better features. We tie these
systems together with review articles In this Issue
that should form a departure point for continuing
coverage. For those who dont yet have a disk
system, this should be a mouth watering bit of
reading. Even those who have disk systems should
find some new Information In the reviews. Want TWO
DOS systems with your present equipment? That too!
UP-DATE DISK SUPPORT: The capabi I Ity now
exists to provide disk support to users who have the
Amdek Amdisk 3" disk drive. However, due to the
cost of the 3" diskette, all who order the Issue
Disk on 3" disk should send a disk to have the
programs recorded thereon. Issue diskettes are also
available In all formats of 5 1/4", for Ollger Safe,
Larken Disk, and Aerco FD 68, If ordering for 5
1/4" drive please specify for SS or DD, and 40 or 80
track. The October Issue Diskette Is a success,
with about 1/3 of the subscribers ordering. That
Mall Merge program really does Its thing, for almost
every type of Listing needs, from Mai I Lists, to
inventries, to invoices, to the daily unit milk
producing records for a dairy herd, ^Bi'^rh-pro^ws^
It being COLD up Noarth, this issue will try
to warm you up by filling space with some Sunny
Florida file photos. They are di rect from the
Chamber of Commerce. For those who dont know,
Panama City Is up In the "Pan Handle" of Florida, on
the North Coast of the Gulf of Mexico. There are
rolling hills, large navlgatable rivers, limestone
springs that gush sparkling water, dense hardwood
forrests, and beautiful clear lakes. We have four
mild seasons of the year. Our tourist seasons are
the Summer for the Yanks and the Winter for our
"Snow bird" Canadian friends. But our best seasons
are the Spring and Fall, together about five months
of delightful temperatures ranging from 65 to 85
degrees. It Is over 600 miles from my house to
Miami and another hundred down to the Keys,
WIMTER FEST IN ORLANDO, FLORIDA: Now Iff 'n you
want to warm up the bod and attend a TIMEX COMPUTER
FEST at the same time, then comoan down to the
Winter Timex Fest In Orlando in early MARCH 88.
Thats the time when you think that Winter should be
about over, but It 'aint. The details are: Place:
Marlott Hotel, Orlando Florida, Time: March 4
through March 8, 1988, Reservations are necessary
ONLY if you want to stay at the Marlott Hotel,
Otherwise It Is no sweat for motel space elsewhere
around town. You are encouraged to pre-register for
the FEST Itself, but you dont have to to attend.
Registration at the door Is $8,00 Single or $12,00
Family, Pre-reglstratlon by mall Is $5,00 Single or
$9,00 Family, Mail to: Winter TImex Fest, 249 N.
Harden Ave,, Orange City, FL 32763, Contact Is Eric
Johnson at that address. The Marlott Hotel Is at
the South edge of Orlando, very convenient to Disney
World, Sea World, Circus World, Cyprus Gardens, and
other World Family attractions. It Is about 45
miles to the East Coast beaches and the Space
Center, What a great opportunity for a combined
Winter Fest and Family vacation! Your hosts are the
combined TSUGs of Florida,
FILING UP-DATE PAGES: The pages are numbered
by the color section that they belong to. Please
remove the staples and file the pages In your
UP-DATE booklet. New page separators are the front
and back covers of this Issue titled: "EXTRA MEMORY"
and "Telecomputing", UP-DATE needs more
contributing writers to cover these special
subjects: Ollger Safe System, Larken Disk System,
Aerco FD-68 Disk, TOS (Zebra) Disk, CP/M and RP/M,
Telecomputing, and general articles on programming.
The sharing of your knowledge will be appreciated by
all,
NEW SOFTWARE: This Issue brings some new and
Interesting software In the yellow pages. Herb
Bowers, an eminent authority on INCOME TAX, Is just
In time for our dreaded TAX REPORTS. Herb promises
to save you money with his software, and GET THIS!
He climbs way out on a I Imb and sez that if you use
his tax program and are penalized by IRS, HE PAYS
THE PENALTY! Now that Is what I call CONFIDENCE,
Also, Herb brings us "Vanna Brlte" (Hmmm),
Then JOHN McMlCHAEL offers a Interesting
combination of hardware and sofware to use the
Inexpensive Commodore Plotter to draw airplanes In
flight, pretty girls, and fantastic graphics. One
needs to buy a $49,95 Commodore plotter to do alia
that, I'm gonna do it because the plotter Is a nice
peice of equipment and the new capability will be
both fun and useful.
1
January 1988
Next, a new edition of Smart Text for Otiger
V2-35 EPROM is off erred. This one has FULL EDIT
during input typing, a expanded Mail Merge annex.
Automatic Column printing, and a special printer
set-up for Daisy Wheel printers. These columns are
samples of the Auto Column Printing function. No
Cut and Patch, the columns print automatically,
UP-DATE HEADQUARTERS has added quite a group of
things. Added for your support are, the Amdisk 3"
drives, Larl<en SKDOS Cartridge, Avantex 300-1200
baud modem, Specterm Sl/0 interface, Specterm 64
Software, another TS-2068 with a 4 Drive system, and
Aerco FD-68 Disk system with 256K Memory. Already
on hand was the Ollger Safe System. You should
notice an improved print In this Issue resulting
from the addition of a Daisy Wheel printer, I hope
to find some BBS boards somewhere to down load some
CP/M software for the Aerco FD-68 users. Anybody
got a good source? CP/M is a subject that needs
exploring in depth. Up-Date needs a writer who Is
willing to take us by the hand.
THE UP-DATE BBS: As the learning curve
flattens out, a UP-DATE BBS will be set up using the
Aerco 256K RAM as RAM DISK, with the Larken SKDOS
Cartride, augumented by about 3 Mbts of disk
storage. What I'm planning is a informal BBS that
is exclusively for the subscribers and has about
three sub boards. One will be for program
downloads, another for friendly message interchange,
and one for shopper service. Suggestions and
helpful guidance will be appreciated,
A Cheap and Excellent Twin Disk Drive
For $49.95
Yep, a Twin Disk Drive, In a cabinet, with
built In power supply, ready to plug In and use, FOR
$49.95 plus shipping!! That Is the Amdek Amdisk
III, a neat little 3 inch drive. There are a couple
of catches to the deal. The diskettes are not
"Floppies" but "Hardies", The diskettes are more
like a thin cassette, a sandwich wafer of hard
plastic that protects the enclosed disk. The disk
Itself has a center sprocket that the drive
mechanism engages to spin the disk. It appears to
be designed to enhance long life of the diskette.
The catch Is, the price of the diskettes ($4.95
each). That would be bad if one had to replace them
often, but I believe the diskette should last for at
least a year or more. Now ordinarily, a twin Disk
Drive unit, will cost about $240.00, the price
broken down to $160,00 for two drives, plus $80,00
for the drive enclosure and power supply. So, you
can get the Amdisk III for $49,95, plus 10 diskettes
($49.95), and still be ahead about $140.00. One
more catch is the fact that the disk drive reads and
writes to one side of the disk at a time. This may
not be a biggie as each side formats to 195K of disk
space for program and data storage. When one side
is f i lied with data you just flip the disk cartridge
over for the next 195K of storage. The total disk
capacity (both drives) is 780K, A nice aff ordabi e
disk drive system.
Later I hooked up the Amdisk drives in series
with t-*o 5 1/4" drives to operate as "drives 2 and
3" of a four drive system. This allows easy copying
of programs and data between standard 5 1/4" disk
and the 3" drives or direct LOAD and SAVE to either.
The Disk Drive comes with a data cable that
wont fit your disk controller. That Is only a minor
problem, as the edge card connectors of the drives
Inside are Identical to the edge card connector of
your controller card, I had a data cable fabricated
at a local computer repair shop (cost $21.00), Then
it took only a few minutes to remove the case top
and replace the existing cable with the new one that
fits the TS-2068 Disk Dri ve Control I er. Problem
solved, but you can add $21,00 to the system cost,
making It $120,80 for the Amdisk twin drive plus the
10 diskette cartridges. The drives operated
perfectly upon first hook-up. Also, it has a
cooling fan to keep down heat problems. Many of the
more expensive drive enclosures lack good heat
dissipation. This is a fine disk drive system, but
dont expect to be able to buy software on these
expensive 3 inch diskette cartridges, I am glad
that I purchased mine because they make excellent
additional disk capacity to my other drives, and I
believe that the diskette cartridges will last
forever. Source: Peripherals Direct Ltd., PO BOX
4301, North brock, IL 60062, Tel: 1 800 332 9988.
They take plastic money but charge a service charge
for it.
I am fascinated by a ad in Osmputer Shopper for
a Zerox 16/8 bit CPU Computer with 10 mbt hard drive
that sold about two years ago for over $4000.00 and
is now offered at $349.00. That might make a better
BBS system If I can find a BBS software for it.
Subscriptions to UP-DATE are now at about 150 and
still building, I have received a lot of
compliments and no gripes, which makes me want to
try harder. Wishing everyone a successful 1988
year, Ed,
January 1988
Extra Memory Progranwlng
Most of us can visualize the con^uter's
"regular" memory. We know that the ROM part of
memory has "fixed" machine programming put there by
TImex when they built the computer, and that there
Is a section called RAM that we store our own
programs In. To carry this visualization further,
we will do some diagrams that splits up the memory
Into CHUNK SECTIONS. The chunks wl 1 1 be Identified
by the ADDRESS that the computer's CPU uses to send
and receive data to and from the chunks of memory.
Please refer to Figure 1 for the visualization.
Figure 1
-0
Now that Is a busy diagram Isn't It. The left
block Is what we normally visualize, having two
sections of memory, "ROM and RAM", The center block
depicts another 64K "BANK of MEMORY" called "The
XROM BANK", TImex put only 8K of memory there to
handle such things a Cassette Load and Save, When
we type a LOAD or SAVE command, the computer
switches OUT Chunk 0 from home bank and switches IN
Chunk 0 of the XROM Bank, to do the LOAD or SAVE.
Notice that the other "Chunks" of the XROM Bank are
vacant, having no Memory Chips Installed, TImex
didn't even put sockets under the hood for more
memory chips. Also, notice that the block on the
right Is named, "The Dock Bank", and all three BANKS
have the same CKLh^S Identified in the same manner,
A CHUNK Is 8K (8192 bytes). As we get Into
Extra Memory we wl II transfer CHUNKS of Memory Chips
IN and OUT of the range of addresses that the CPU
controls. ; As we visualize the computer, the CPU
"Sees" the memory chips that are In the left block,
"the HOME BANK", Now suppose that we add some
memory chips and fix them so that they are In "CHIMK
7" of the DOCK BANK (the right block of figure 1).
Would the CPU "see" that group of memory chips? NO,
7
7
c
5
s
u.
f
3 ^
2
3
z_
t
Z
/
1
}
0
0
because the CPU can see (address) only 64K at one
time, and the TS-2068 Is fixed so that the HOME bank
Is what the CPU normally sees. Here Is where
PROGRAMMING comes Into the act. We can do some
PCXES, and wipe out CHUNK 7 of the HOME BAhK and
make the CPU see CHlM 7 of the DOCK BANK Instead.
When we do that. Chunk 7 of the HOME bank will
still be available for storage of data. Now that Is
confusing, so we will transfer attention now to
figure 2 to see how that can be possible. In figure
2 we delve Into the way a program I Ine works from a
Extra Memory bank. The senarlo Is: We have a BASIC
program In Chunk 7 of the DOCK Bank, and that
program Is running. The TS-2068 always runs
programs lines In the HOME BAhK, no matter what bank
the program lines are stored In, The Ingenuoie way
that this happens Is klnda confusing and we will
delve Into that later. The key point here Is:
Since each program line runs In the HOME BAI^, the
CPU "sees all 64K of the home bank", and Stores DATA
that Is being generated In HOME BANK RAM.
PMC
StfH referrfng to Figure 2,;. the lines of
programming th;at qre itn the Dock Bank are picked up
ONE LINE AT THE TIME, placed In the "AROS BUFFER" of
the HOME BANK and operated. Say that the Hne has
programming that sez <LET A$="l go to Church on
Sunday ">, Then the contents of A$ Is stored In the
HOME BANK RAM, Then when the last part of the line
of programming Is finished. It Is replaced with the
NEXT line of programming that is In the DOCK BANK,
and that line Is executed. The Dock Bank program
continues to run, one line at a time, until the last
line of the program has finished. So, In effect,
the CPU can manipulate TWO 64K banks of memory at
the same time.
1
January 1988
Now to complete the "visualization", lets
transfer our attention to figure 3, where we have
added a disk drive, a printer, a monitor, a modem,
and a cassette. We are still operating the program
that Is In the DOCK BANK, one line at a time. The
LINE of programming that is operating is In the AROS
BUFFER of the HOME BANK. That line of programming
can contain LPRINT CONWANDS, or PRIWT commands, or
DISK LOAD/SAVE commands, or Cassette commands, or
just anything that the TS-2068 can do. If data
variables are created, as when receiving data from a
modem, the data Is stored In the HOME BANK RAM. OR,
data that Is In the home bank Ram may be printed by a
LPRI^f^ command In the program line.
Figure 3
Now that we have the concepts of Extra Memory
Operation In focus, we wl II go on to the "how to do
It" phase. One could survive by Just plugging In a
cartridge and typing RUN, but since Dock Cartridge
Software Is about as scarce as hen's teeth, we dont
have that easy option. Besides, we want to learn how
to do It anyway. Now we will look at figure 4 and
see a fly in the soup. The soup Is HOME BANK Memory,
and the pesky fly Is "PROG". PROG is the memory
address where the CPU finds the address of the first
byte of a BASIC program. Normally PROG Is at address
26710, and the first 1 1 ne of a basi c program wl 1 1
start at 26710, which Is right slap In the middle of
CHUNK 3 of the home bank.
J Figure 4 ?^^ ><'
CkUi\K ^
As we get into the methods of BANK SWITCHING, we
must tell the CPU "where to find PROG". We wi II do
that later. Right now we must learn how to switch
banks. We will use the term "Enable" to mean the
chunks of memory that the CPU sees for program lines.
For example If we enable Chunks 4 through 7 of the
DOCK bank, then the CPU will not see chunks 4-7 of
the HOME bank, and WILL see chunks 4-7 of the DOCK
bank. Bank switching Is accomplished by using the
OUT command. "OUT port 244" is used to designate the
chunks of memory to enable. It Is easier to
visualize if we use BINARY numbers with the OUT
conmand. OUT 244, BIN 00000000 would enable all 8
chunks of the HOME BANK, while OUT 244,BIN 11111111
would enable all 8 chunks of the DOCK bank. Please
refer to figure 5 for a visualization of the effect
that each "bit" of the binary number has upon the
chunks of memory enabled.
"4 PRmTEH. i <yifmx^
The easiest and most simple way of using extra
memory banks Is to enable chunks 4 through 7 at one
time. OUT 244,BIN 11110000 will enabi e chunks 4
through 7 of the Dock bank. Then I f you want to stop
using program lines In the dock bank, OUT 244,B IN
00000000 would enable all 8 chunks of the HOME bank.
Remember, each of the bits affect a single chunk
enable. Zero enables a Home bank chunk, and "1"
enables a dock bank chunk. The "OUT 244,BIN number"
can be done In the direct mode or from within a line
of programming to switch bank chunks.
Now suppose that we want to use a program that
is In the Dock Bank chunks 4 through 7. OUT 244,BIN
11110000 would do It. BUT, the CPU looks for the
first line of a program at the address of PROG, and
PROG Is sitting at address 26710 In chunk 3 of the
home bank, (re-vlsit flgurei^). Now we must change
PROG to the address of the first line of our program
that is in the DOCK bank. The first address of CHUNK
4 of the Dock bank Is 32768. But we cannot start
there, as the first 8 bytes of a dock program is
reserved for "control codes". See the tab I e of
control codes In figure 6. Please study the table a
bit and come on back.
Figure 6
Value Significance
1=Baslc and MC. 2=MC only
1=LR0S or 2=AR0S
A two Byte Address
Second Byte
BIN 0=HOME. l=Dock
0=No and 1=Yes
2 Byt Nbr for 1 ngth of
MC pgm starting at 26688.
Adr.
Meaning
23768
Language type
23769
Cartridge Type
23770
Program Start
23771
23772
Chunk Sel ect
23773
Auto Start?
23774
No. of Bytes
23775
reserved
3
EPROH OR RAW
O.K. You can now see that we want to move PROG
to address 32775 which will be the first byte of the
program lines In the docl< bank. We can do that, but
now we are getting to a point where procedures vary
between using RAM or EPROM in the Extra Memory Bank,
The discussions so far have been applicable to
both EPROM and RAM in the dock bank. We will now
concentrate upon handling RAM Memory, and leave EPROM
for another article. One canot just type and EhJTER
program lines into the Dock Bank as we are accustomed
to doing. It is necessary to first put the program
lines in HOME BANK Memory, and then move the program
lines into the Dock Bank Memory for operation. The
objectives and steps of operation are: 1. Move PROG
to Adr 32776, 2, LOAD a Basic program from either
Cassette of Disk, 3, Move the Basic program that Is
In Home Bank Memory Into Dock Bank Memory. 4. Make
the necessary POKES to the first 8 bytes of Dock Bank
Memory, 5. RUN the Basic Program that is In the Dock
Bank. Most of these functional steps may be
accomplished by adding some short utilities to the
Basic Program after It Is first loaded from Cassette
or Disk,
THE UTILITIES
Sources and Credits
The TS-2068 Technical Manual,
Mr. Thomas B. Woods* Non Volatile Ram Manual
PLANNING: We will create a group of utilities
to ADD to ANY BASIC program. After the uti llties are
added, the program can be SAVED with a starting line
number of 9800, When the program Is RE-LOADED, a
menu will appear. The menu choices will allow us to
elect whether to MOVE the program Into DOCK RAM, or
to operate the program In the HOME BANK, If DOCK
OPERATION Is elected, the added uti I Ities wl 1 1 be
exercised, but if HOME Bank Is elected, the utilities
will be Ignored. We may add this programming to all
of our BASIC Softwares and utilities to have the
choice of HOME or DOCK Bank operation. It Is assumed
that there is a set of RAM memory chips installed and
set up to operate in the Dock Bank, To begin, we
LOAD a Basic program from Cassette or disk and add
the following program lines.
THE MENU: 9800 INK 7: BORDER 0: PAPER 0: CLS:
PRINT AT 10,4;"Y0UR CHOICES ARE:»'»TAB 4;"1, Operate
in HOME BANK" "TAB 4; "2, Operate In DOCK BANK": INPUT
A: IF A<1 OR A>2 THEN GO TO 9800
9802 IF A=1 THEN RUN: REM** You may replace RUN
with a GO TO the program starting line,
9804 CLEAR
9999 RESTORE 9999: FOR X=23296 TO 23340: READ Y:
POKE X,Y: NEXT X: RANDOMIZE USR 23296: DATA 175,
6,2,33,83,92,94,35,86,213,33,89,92,16,247,225,
209,237,82,68,77,235,175,211,244,126,245,62,240,
21 1 ,244,241 , 119,11 ,35,229,33,0,0,237,66,225,32,
234,201
January 1988
When DOCK is elected, the above routine MOVES
the BASIC Program into the DOCK RAM. Next, the AROS
Overhead bytes will be poked,
9999 RESTORE 9999: FOR X=32768: READ Y: POKE
X,Y: NEXT X: OUT 244, BIN 00000000: DATA
1,2,8,128,15,0,0,0
Now SAVE your Basic Program, with the above
additions to Cassette or disk. You may add the same
lines to your other Basic programs that you may want
to use In the dock bank, IMPORTANT: The basic
program, when re-loaded WILL NOT operate in Dock Bank
without the following being accomplished FIRST,
MOVE PROG F IRST
MOVE PROG: Before each LOAD of a Program to
operate In the dock bank, PROG must be moved to the
starting address of the Dock Program lines, which is
32776. Otherwise, the CPU will look for the normal
starting address of 26710, which address will be i n
the HOME Bank chunk 3. Therefore, the operating
procedure must be to FIRST, MOVE PROG, THEN LOAD the
Basic Program that has the utilities Installed. Then
the program Is moved Into dock bank with a proper
starting address. The fol lowing program to MOVE PROG
must be the first step.
9999 RESTORE 9999: For X=23296 TO 23304: READ Y:
POKE X,Y: NEXT X: RANDOMIZE USR 23296: DATA 33,85,
104,1,178,23,195,187,18
The above utility should be entered just after
the computer has been turned ON, ENTER and RUN the
program, then Delete the line. DONT type NEW, as
that would RESET PROG to 26710. Imediately after
running the above utility, and Deleting the line, go
ahead and LOAD your Basic program that has the new
menu and MOVE programming. Elect option 2 in order
to move the basic program Into the dock bank. When
the utility has moved the program into dock, you
should have a blank screen.
The Situation
If you have been following through so far, you
now have your Basic program in the Dock Bank, It may
or it may not operate, depending upon several
factors. First, there are no variables anywhere.
Variables are not stored in the dock bank, and we
didn't store any In Home bank. Also, we didn't
delete the program from home bank, so It will still
be there. And, because at line 9999 we did an <OUT
244, BIN 00000000> we are now operating In the Home
bank. And, because at 9999, we POKED 32773,0, the
program that Is In Dock does not Auto Run, So, right
now, the CPU "sees home bank" and the program that is
4
still there. So, to continue, we should type <DELETE
1, Ef^ER> to get rid of the home bank program.
Next, to get into operation In the dock bank, we
need to <OUT 244, BIN IlllOOOO and <PCKE 23750, 128>.
Then <G0 TO the start line of your program>. Try it
if you have moved a program. If it doesn't operate
right, then join the 100$ club, a group of extra
memory users who ALL had their first Moved program to
be not ful ly functional. Then we will proceed with
some more learning. But maybe It worked fine and you'
dont need to read further? If so, please write an
article for UP-DATE!
Continuing for the new member of the 100? club:
Dont give up! Be persistant! Cuss maybe, but dbnt
quit! The rewards will come! That program wasn 't
important anyway. And it is likely to be hiding in
the dock bank right now. You cannot see it, because
you cannot LIST a Dock program, Thats the reason why
we must always carefully edit and fix a program
before putting it in a extra memory bank. Some
needed to know facts are: You can LOAD a variable
file In two ways. 1. A program line In the dock bank
can be: <LOAD/"name"VAL> or other disk syntax to load
a vars file. 2. You can POKE 23750,0 to get into the
home bank. Then vars files may be created with
program lines, or LOADED from disk.
A third way of creating vars is to do It In
program tines in the dock bank, like LET A$= "I
really dig this". Then the vars so created will be
stored In the home bank. You see, when a program
line Is executing. It Is IN THE HOME BANK, the CPU
"SEES HOME BANK", and variables created are stored In
home bank RAM. Next we wl II look at some more key
memory addresses that have names. ARSBUF is adresses
23748 and 23749, and is the pointer to the ARCS
BUFFER. ARSFLG is Address 23750, and is the pointer
to the current start of a AROS Data Line, Also 23750
acts as a switch to switch operations between the
HOME BANK and the Dock bank. POKE 23750,0 enables
the HOME bank, and POKE 23750,128 enables the Dock
Bank,
Other Key addresses are: ADATLN Is Address 23751
and 23752 and Is a pointer to the current Start line
of a AROS Data Line. ADATLENG is address 23753 and
23754 which stores the length of the current AROS
DATA LINE. Of that group you will get the most use
of Address 23750, the switch for changing banks.
After PCKE 23750,0 you can enter program lines In the
home bank, or LOAD another program from Disk or
Cassette. While experimenting with changing between
Home and Dock, try combinations of <POKE 23750,0: OUT
244,BIN OOOOOOOO and <POKE 23750,128: OUT 244, BIN
11110000>, Keeping notes of results will be helpful.
PROGRAMMING LIMITATIONS: There are some
restrictions on commands that can be used in EXTRA
memory program lines. ON ERR GO TO cannot be used.
But to skirt around this a ON EWR li ne can be put in
the home bank, and "switched to" for use of that
8861 XjenuBp
powerful routine. Example: your program line is <100
ON ERR GO TO 500> and <500 ON ERR RESET: do
something: GO TO 102>, Now if those lines were in a
program to go into DOCK Bank, they could be
re-arranged as: <100 POKE 23570,0: OUT 244, BIN
00000000: GO TO 10>. Now that would enable the home
bank where a I Ine of programming could be: <10 ON ERR
GO TO 20> and <20 ON ERR RESET: do the same thing:
POKE 23570,120: OUT 244, BIN 11110000: GOTO 102>.
Study that out for another way to skin the cat.
The Oliger SAFE "Fast FOR Counter" is not
acceptable programming in Dock Bank, But, you can do
a simlllar switch to Home Bank, use the Fast FOR
counter, and when finished, switch back to Dock Bank
and continue. Disk Drive LOADS and SAVES of
Character arrays, Vars filc^, and Screens work fine in
Dock program lines, but Not BASIC Programs that use
starting line numbers or machine code tables. When
you are using Extra memory, PROG Is set UP to Chunk
4, leaving about 6K of address spaces vacant In chunk
3 of Home bank. Since this space is un-used, it
could be used for Machine Language programs to be
executed by RANDOMIZE. Also, that 6K is subtracted
from FREE for Home Bank programs.
Finally, an awful lot of territory has been
covered In this article to get from ground zero to
"somewhere". We have just scratched the surface of
Extra Memory. Many facts have been left
out,espi cal I y such things as how to use Machine Code
utilities and programs. And, we have covered only
the Dock Bank of extra memory. UP-Date will continue
to provide as much useful Information as can be dug
up about Extra Memory prograrmiing and devices. Both
UP-DATE and the subscr i bers wi 1 1 appreciate writer
contributions to help In the understanding of this
broad and relatively unexplored subject, 8^"'^
January 1988
Dock Bank Memory for Twenty Cents
Convert a TS-1000 Ram Memory For the TS-2068
Many TS-2068 users graduated from the TS-1000 and sti II have a 64K Ram for that classic that is
collecting dust somewhere, I ask Mr, John Oliger to give us information about converting his 64K
Ram for the TS-1000 to use as CXDCK BANK MEMORY. He complied and these instructions are simple and
easy. Other TS-1000 memory boards may be converted in similiar manner. Why dont one of you who
have done it to a Memotech Memory send in the schematic changes? Given here is the Oliger Schematic
with insets showing the modification details. When the changes are made, the 64K memory is split
into two 32K banks addressed 32768 through 65535, chunks ^ through 7 of the TS-2068 memory map. The
"Bank A/B" switch selects the Bank that will be active. The data that is placed in either bank will
be kept refreshed by the computer when the computer is ON,
The "48-64K" switch is used to TURN ON or OFF the UPPER 16K of memory of the bank selected by
the A/B switch. If the 48-64K switch is ON, then the entire 32K of the bank selected is active in
the dock bank. If the 48-64K switch is OFF, then only the LOWER 16K of the bank selected (chunks 3
and 4) Is active In the dock bank. But the upper 16K region is still kept refreshed by the
computer. This allows one to elect programming in the dock bank in six combinations of 16 and 32K
groups.
John Oliger warns that no one should consider building this memory board from scratch because
of the high cost of the 4164 "pin 1 refresh" chips. But if one is already on hand, the cost is
about 20 cents to add 64K of Dock Memory to your TS-2068 (two IK resistors). I could afford twenty
cents, so ! dude it and it works! When finished, I just stuck the memory board in the empty slot of
the Oliger Expansion Port and started programming in the dock bank. Maybe you know someone who has
one of these outstanding 64K boards and can trade them out of It? Now, programming dont just jump
into that new Dock Bank Memory, Thats a little tricky and one must learn how. See the articles in
the UP-Date section titled "Extra Memory". A check list of the modifications is given below.
Check List of changes. Refer to scehematic on next page,
1. Cut the trace to pin 11 of U-4 (LS-86), OR Remove U-4 and Bend Pin 11 Outward.
2. Remove 12-16K Switch.
3. Remove 8-12K Switch.
4. Remove R-2 27K resistor and replace it with a IK resistor,
5. Remove Diodes D-3 and D-4, OR remove U-5 (LS-138) and bend pins 12 and 13 outward.
6. Remove Diodes D-9 and D10 and Resistor R-4.
7. Remove Diode D-11.
8. Cut trace to pin 3 of U-4, OR Remove U-4 and bend pin 3 outward.
9. Remove U-5 (Ls-138) and bend pin 15 outward. Re-install,
10. Cut the trace from Bank A/B switch that connects to U-4 pin 10. Cksnnect that side
of the A/B switch to Ground. This leaves pin 10 of U-4 connected to +5 Volts.
11. Cut the trace from ground to pin 5 of U-5. Jumper the Pin 5 trace to ROSCS,
12. Connect a new IK resistor between the side of the A/B Switch that is connected
to U-2 (LS-00) pin 10, to +5 Volts.
Programming
January 1988
HAWDY REF-EREMCES AND A SAFE-DOS FTILE IMDEXER
Bob Hariung, 2416 N. Co. Line, Kuntertwn, IN 46748
When Bill Jones asked ise to contribute soie articles for
SDU ny first impulse was to reply that I would rather just
sit on the sidelines and pick the brains of his other
writers for awhile. Because the things 1 have written
since the days of SYNC and SYNTAX have been simply the
sharing of ny learning experiences with T/S conputers, I
felt that nost SDU readers probably would have advanced
far beyond anything I night be able to offer. Like many
T/S users, my first hands-on experience with a computer of
any kind started with an unexpanded 2X80, to which I later
added the 8K RON and the notorious RAN-pack, moving up to
the 2068 as it became available, and most recently a QL
when they dropped in price below $100.
(As an aside, although I an very impressed by the QL
SuperBasic as a quite powerful programming language,
especially when it is extended by Super Toolkit 11, 1
much prefer the 2068 Basic. When a T/S is extended by
Beta Basic 3.0 which adds over 100 new or enhanced
commands and functions, including procedures, to a
Spectrum-emulated 2068, almost all of the more significant
progranoing features of SuperBasic other than
multi-tasking are made available but with much easier
key-in, syntax-checking, editing, and often faster pro-
cessing. Most of these new BB commands and functions have
2-10 optional formats to further extend their
capabilities. For anyone interested in what Beta Basic
does, by permission of BetaSoft I have written a 20K-byte
demo program that includes an uneditable version of Beta
Basic to actually run typical listings of about 85 of
these BB ccmands. It is available for $5.00 to cover the
cost of tape, postage and handling.)
After carefully reading through the first issue of SDU and
the useful tables Bill gave us, it occurred to me that
another one which night be included is a list of some of
the more frequently used system variables. I have copies
of appendices B and D from the 2068 manual on the wall
back of my work desk, but I find it handy to have these
excerpts (LISTING I) taped to the right-hand side of the
computer for quick reference. If the list is covered with
clear packaging tape and attached only at the top edge it
does not interfere with using the cartridge port.
DOSDEX~AN AUTOMATIC FILE INDEXER
The OOSDEX file indexer is an adapation of the excellent
menu loader written by Roe 1 of Mulder and John Oliger and
included in the SAFE DOS documentation. On my CPI 80-track
drives, one DOSDEX disk can hold up to 165 disk catalogs,
each of which can contain up to 165 individual file
titles, or 27225 in all. These are displayed in the same
format as the M/O menuloader and are sequentially accessed
by keying (CAPS SHIR L> or just lower-case <1>. If the
appropriate disk is inserted, keying (ENTER) as in the
menu loader will load the title selected by the cursor.
I added item numbering to the display of titles and
file-types, without using the fast FOR/NEXT loop, so the
additional processing time causes the display of nenu
pages to be noticably slower. (At my age, more is passing
me by than I'm catching up with anyway!) If the eighth
byte (14) is changed to an 8 and the listing is entered
exactly as given here, the machine code routine from your
menu-loader listing may be poked into a 39-byte first-line
REM instead of a MARS location as the program was
originally written. No other variable definitions nay be
placed between CLEAR and DIM c$ if the code is stored in a
line 1 REM. With deletion of some screen effects and the
line 10 q$ definition this allows DOSDEX to be placed in
file 0 with SAFE v2.32 or later.
Or if you choose, you may simply adapt your original
menu-loader listing with the required changes for DOSDEX
and save it as the very first file. It will not fit into
file 0 but you can use it along with the nenu-loader
routine which is in file 0. Note that token-words must be
used as much as possible and line 200 of the original
nenu-loader listing must be moved up to line 5. In
condensed form DOSDEX will just fit into one cylinder
(5120 bytes) when expanded with catalog data, or if you
prefer to retain the original screen format each index
will use two cylinders, cutting in half the maximum
possible number of titles stored.
To use DOSDEX, first save it (or the nenu-loader) to track
8 on your index file disk with (CLEAR) (SAVE /B). Then
make a save of DOSDEX as the first file on the disk with
(SAWE / "DOSDEX" LINE 2). (This is necessary in order to
initiate the routine if the shorter form of DOSDEX is in
file 0.) For convenience in identifying your file disks,
number them consecutively with a felt marker, numbered
labels, or white-out as 8,1,2,3 . . . beginning with your
DOSDEX disk. Since the storing of the respective indices
requires alternately obtaining the CATalog data from each
file disk, then storing it on the DOSDEX disk, it's a good
idea to have write-protect tabs on all the file disks.
(You could also adapt DOSDEX to a 2-drive system so file
catalogs would be read from one drive and saved to the
DOSDEX disk on the other.) The sequence for indexing on a
single-drive system is this:
Insert the DOSDEX disk (8) and key (LOAD). (Key (ENTER) to
load DOSDEX if it is stored as file 1.) Remove DOSDEX disk
and insert file disk 1. Key (C) to CATalog the file disk
into DOSDEX. (If you have keyed in (LET / P = 0) before
loading DOSDEX and have your printer on, a hard copy of
the file titles will also be printed out here for disk
5
Programming
January 1988
labeling or a loose-leaf binder.) Renove -file disk 1 and
insert DOSDEX disk. Key <S> to SAWE as index M'. Repeat
with file disk 2, and so on.
To read the DOSdex files, key <LOAD> with disk 8 in place.
When DOSDEX is loaded, either fron file 0 or fron file 1,
then key lower-case <1> or <CAPS SHIR L> to LOAD first
set of titles. Use any key except L to run the cursor
through the page(5) as with the menu-loader, or key either
lower-case or upper-case <L> each tine you want to
sequentially load each of the file indices in turn. If you
want to update only one particular index, reset NEXT H
(disk number) by keying <N> and insert the corresponding
disk. Key <C> to CAT the updated info, then insert the
DOSDEX disk and key <S> to SAME it.
mm REFERENCES
DFILEl: 14384,6912
KEY REPEAT STOPs POKE 23561,0
• ' DELAY! POKE 23561 ,n
■ RATE! POKE 23562, n
CmRS TABLE [+2563! 23606-7
(Noraal! POKE 23607,60)
KEYBEEP LEN! POKE 23609,n
VARS START! PEEK 236274PEEK 23628*256
(46 for first CHR* byte)
BASIC start! PEEK 236354PEEK 23636*256
(+1 for LSB of line no. or +5 for
first character byte of line 1 REM)
LINE 0: POKE 26711,0
CALC STACK! PEEK 23651+PEEK 236521256
CAPS ON! POKE 23658,8
" OFF! POKE 23658,0
TV FRAMES! 23672-3-4
TOP-LINE SCROLL! INPlfT or POKE 23692,-1
LAST-LINE SCROLL! PRINT AT 21,0 after above
UNUSED SYSTEM BYTES! 23728-9
R^OPi PEEK 237304PEEK 23731*256
PRNT DRIVER! POKE 26703,LSB! POKE 26704,MSB
UDG start! 65368 (168 bytes)
JLO SAFE printer connands!
LET /p=o
OUT 127,27! LPRINT
Col/line: POKE 23323,n (defauU=25S)
LF after CRj POKE 23324,10 <0=no LF)
SCREEN LPRINT TO PRINTER! OP^ •2,'P'
(Normal ! CLOSE 82)
WARM RESET! RANDOMIZE USR 0
DOSDEX LISTING
1 RBI 123456789 MC code here 456789B 123456789
2 CLEAR ! DIM zimi ■178*,m •28')! LET t=VAL 'IS'! L
ET s^S6N Pl! LET (fNOT PI: LET iNs
5 LH a=VAL "PEEK 236354PEEK 23636*25645* : LET c=INT (a
mi •256')! POKE m "23549" ,m "195"! POKE VAL "23559",
a-(c*VAL '256")! POKE VAL •2355r,C! LET fi=USR VAL "23549
LET row=54s! LET col=VAL ■9"! LET n*=c^(VAL ■178', TO V
AL "16')
28 LET a^"! DIM f*(WL "6" ,545)! LET f^(s45)=' DATA n"
! LET mm PI)=" DATA $": LET f$(VAL •4")='C0DE "s LET f
am. ■5")=m let mm. '6')=^ "
308 CLS ! IF ni(LEN n*)=' ' THEN LEI n^n*( TO LEN ni-s)!
60 TO m. "388"
328 PRINT AT 0,0;" Diskl'|d-sj': ' |ni;lo;'Key: NEXT CAT S
WE LOAD (l)l";d
485 LET f=5! LET c=INT (fi/VAL "18")! LH dif=lNT ((fi/VA
L "18"-c)«WL ■18"4WL ".4"): LET loop=VAL "17"
418 LET q*="p": LET it=s! IF loop)=fi THEN LET loop=fi! 6
0 TO VAL "425"
415 FOR i=s TO c: FOR nFO TO loop! PRINT AT row4r6,t ja*;AT
row4ii,t-LB< STR$ itjit;" "jc^dt, TO t)|" ';f$(CODE c^(it
,m 'ID+D: LET rt=it45! NEXT »! 60 SUB VAL •588"! NEXT
i: FOR 1=545 TO m. '19": PRINT AT i,t;a$! NEXT i! IF NOT
dif THEN 60 TO WL "418"
425 IF f THEN FOR bfo TO dif-s: PRINT AT row4ni,tja$|AT ro
w4ii,t-LEN STRI it;it;" ";ci(it, TO t)}" •}f$(CODE c$(it,VA
L •ir)4l)! LET it=it4s: HBH mi IF loop>=fi THB< LET f=o
427 IF NOT f THEN LET it=fi45
438 60 SUB VAL "590": GO TO VAL "418"
588 FOR L=o TO n-s! PRINT AT row4L,col-s-s|" '; IWERSE
5}">': IF q«>"" THEN FOR aFS TO PItPl! NEXT as LET qil=""
518 LET a<=INKEY$! IF a1=" THEN LET q4="p"! 60 TO VAL "5
18"
528 IF CODE al=VftL "13" THEN 60 TO VAL "688"
522 IF a$="C" THEN OPEN }»2,"P": CAT : CLOSE 12: 60 TO INT
PI
524 IF a*='L" OR a$="r THEN LOAD /STR* d
526 IF a«="S" im LET d=d45: SAME /STR$ (d-s) LINE t*t!
60 TO INT PI
528 IF a^"N" THEN INPIJT ' INPUT NEXT «"id! 60 TO INT PI
538 PRINT AT pow4L,col-s-sj" *: NEXT L: LET a4="
•1 RETURN
688 CLS : LET poy=it-B4L: LET d«=c$(pos, TO t): LET a=COD
E cl(po5,t45)! IF NOT a THEN LOAD /d*
618 IF a=s THEN LOAD /d* DATA nO
628 IF a=545 THEN LOAD /dl DATA n*()
638 IF a=INT PI THEN LOAD /d«CODE
648 IF a=\^L '4" THEN LOAD /dIABS
658 IF a=^L "S" im LOAD /d$WL
AUTHOR PROFILE
Mr. Robert D. Hartung, "Bob" to us, holds down
two positions for Dekalb County, I I Mnols. Bob I s
Chaplain for the Sheriff Department, and Is a member
of the County Child Protection Team. Bob also
serves as Pastor of Church of God Ministries In Fort
Wayne, IN., and Is the Founder of "Turning Point
Services", a Ministerial outreach program for
troubled youth. Bob prevtouly served with
distinction In Pastorlal work In England and Canada.
His hobbles are; helping Youth development, fishing,
antenna design, photography, and TS Computing. Many
of us are familiar with his writings In SYNTAX,
SYNC, TS Horizons, Syncware News, Time Designs, and
CTM magazines. Bob Hartung Is hereby appointed
Chaplain and Spiritual advisor for UP-DATE and the
subscribers. We need Bob In more ways than one.
6
Programming
January 1988
jflLSSTKRIIilG IHE MAMAGBBEMf OF OaLABACIia AHKAIS
Wouldn't it be nice if we could CAT the disk directory, and with X-RAI eyes see the data that is in
each program! But all we can see is the titles and the data length of each recording. Ibo bad that data
can't be more visable! Probably the big^st problem of using conputers is the need to plan ahead and
organize indexes of files so that later we will be able to find the data that ws need to use. Last issue,
we started with "SDOS MAIL MERGE", a software that creates all kinds of Listings of Data, from "mailing
lists, inventory lists, books and articles lists, to the daily milk producing records of a dairy teid".
These lists are Saved for future use in "Character Armys".
Ohe lists produced by SDCS MAIL MERGE are just that, "lists". SDOS ^feil Merge gives yoi a "Sorted,
pure List", and provides options for print outs in several famHts, LAffiLS be.ing one of the most u^ful.
Itovi if you work with many lists of thin^ or people, you know that each list that yai produce is likely to
repeat sonB of the data that is contair^ in another list. If you print a lot of iiHiling labels using
several mailiiig lists, you are likely sending cut duplicate letters to the same persais. It takes a lot of
tine to cross reference several mailing lists, then more tine to eliminate the duplicaticxis. So, we have
two problems to solve, one- eliminate duplications, and two- "X-RAY the disk files to see their contents".
Ihe Eata ItatgeriBnt Package consists of SDOS MIL MERGE and iiie two Conpanicn Programs, "PURIIY" and
"LIST LOOKER", both given in this issue. Itese two conpanion programs are short encugji that the key-in
preject should be easy. But, as usual, the two programs ;d-ll be included in the January .Issue Diskette.
"LIST IiX)KIiE" is your "X-RAY E/es", and "PUIOTY" is your program to PURIFY all of your varicus listing
against each otJrier to eliminate duplicaticns within all of the lists. Each of these programs are
independant, and designed to be used with the files produced by SDOS MAIL MERGE. Actually, they can be used
to purify arxi process AIJY Dinensicmd ChBracter Array files, v*iatever the source,
PURITY also has another purpose. Long Ifeil or Inventory Files cannot be LOADED to a Printing software
becau^ of the limited amount of IHEE nemory of the host program. t^SCRIPr and SI^IART TEXT both gives us
soneviiere between 12K and 17K of FREE nemory to be used for both lEXT and imiLDJG LISTS. A 96 Ussrae File,
having 7 lir^s of 31 Characters each, takes up 2073)2 bytes, and cannot be loaded to ej.ther program, BUT, if
we break down such large nailing lists to, say, 12 nanES par list, and "process the grcups autaintically",
then tiiere is sufficient FREE available witii almost any v/ord processing software. Such a sdieiiE wculd
result in the handling of mail files of 2604 bytes each, well within the capacity of any Word Processing
Software.
I wont speak for MSCRIPT, bat Smart Dsxt can take 40 such files of 12 nane groups, and print them all
without hesitating, as Form letters, or Labels, or as just print outs of the listings. So, "PURITY" is
desi^d to enhance the capabilities of all Word Processing Softwares, fcy splitting up Lar^ Listings so
that they can be loaded to the operating programs. Now for the details.
PIK IT Y
At ri^t is a scr^n copy of the Purity
Flinction Menu. This menu is line rumber 152 which
is the starting lir^ number of the program. As
functions are acconplished, this neiii is
re^re^nted. Ihe PURITY pregram nay be SAVED and
re-loaded with data aboard. Or, a selection of <6>
will bring pronpts to install a Data Diskette, then
CAT the directory and praipt for irpit of "file
naiiE". Iten a file is loaded, the nenu re-appears
and processing can begin. Each loaded, file is
"purified" with itself, eliminating duplicates, and
eliminating skips, by a selection of <7>. I'tei
finished, the file may be RE-SAVED by a selection of
<1> or <3>.
YOUR CHOICES ARE:
1. RE-SAVE Ihis FILE (SAVE OVER)
2. Break into 12 Jfams Files, SAVE to PURITY DISK
3. SAVE this Largp File Tb PURITY DISK
4. Ca^PARE with all PURITY FILES for DUPLICATES
5. FLIP through File Nanes on Scr^n
6. LOAD another Largs File
7. PURIFY this File
1
7
Programml ng
January 1988
The selecticn of <2> will result in the lar^
file being brcten up into grcxips of 12 name files
and each file SAVED vdth IN-SEQUENCE runeric file
nanss, "mxl thirou^ mx100". This begins the
creation of your "Purity Disk". For exanple, if tha
large file being processed is a file of 95 name
groups, your "purity disk" will have 8 group SAVES,
and their titles will be "nix1 throu^ mx8". Tne
"purity files" will be used to "purify your other
lar^ gcoup files", lb process more large files,
select <6> to load in the files one at a tine, -then
<7>, then <4>. As that sequence finistes, the large
file being processed has been conpared with the 8
purity files, and all duplicates eliminated. Ihe
large file is now PURE, and may be SAVED as a large
file.
Now that we have the second lar^ file
ixjrified, it may also be sived to tte purity disk by
selecting <2>. Then, the "mx" files are again saved
as "12 naice groups", mx9 through mxl6. Ihere will
be fewer saves of mx files if the eliminaticn of
duplicate nanes resulted in fewer name files in the
lar^ list. As more files are loaded in and
processed, the purity file grows, and as it ©rows
the number of conparisDns with the next lar^ file
increa^s. For exanple, if we purify 10 files of 96
names, tiriere could be as many as 80 rax files i^ved
to the purity disk (no duplicates found), or 40 mx
files if half of the names were duplicated within
the files being processed.
HPGKAMMDC
This is a program of Ifested Counters within
Nested counters. Ihe rumber of individual counts is
astronomical. lb purify just one 96 narre file
against itself requires 46O8 conparisai counts, plus
7 counts for each duplicate found, plus 46O6 counts
to eliminate interior ^ips, plus 7 caints for each
skip eliminated. I haven't even attenpted to sum up
tte rioriiber cf counts required to caipare all of the
fields of a large file with ii)e mx files in the
purity disk (be my guest). Oie or two files are
processed fairly fast, taking only about two
minutes. As the purity files build, the tine of
processing increases. Ihis is an ideal BASIC
program to assemble with TII4EiCHINE to greatly
increa^ its speed of operaticn.
PURIIY will not recogriize such repeats as,
"John L. SulliAan, Mr. John L. Sullivan, and J, L.
Sullivan". While using MAIL MERGEE to create the
files, you should be consistant wit^i the farmt for
entering names. Conparisons are nade with the FIRST
I .TOR of each nanB group, the "nama line". If two
Name Lines are the same, then the whole group of 7
lives "of the large file being processed" are
deleted. The files in the Purity Disk are never
chan^d. The uenjs are arranged so that prompts
give the break reeded to charii^ diskettes. You can
use PURirY in several different vays to prxx^ess your
listings. 'Ihe pure files are then ready to print
out with either SDOS MAIL Ifer^, LIST LOOKER, Smart
Text, or any software that can handle character
array listings.
THE PllIRITY LLIST
10 FOR n=1 TO 3: LOAD /"mx"+STR$ n DATA k$(): FOR
y=l TO 12: PRINT n;" ";y: FOR g=1 TO 4: PRINT k$(y,g
): NEXT g: NEXT y: NEXT n
20 STOP
25 FOR n=l TO 96: PRINT n'o$(n,l): NEXT n
30 STOP
55 CLS : PRINT AT 10,0 ; " I nsta I I your Mail File Ois
kette"" "Touch ENTER": PAUSE 4e4: CLS
60 LET i=0: LET b= 1 : LET x=0
65 LET a=0: BORDER 0: PAPER 0: INK 5: CLS : CAT :
INPUT "Input Name of Array to L0AD";a$: LOAD /a$ DAT
A o$()
66 GO TO 152
70 CLS : PRINT AT 10,0;"Check all 96 Names and DEL
ETE DUPLICATES "; FLASH 1;"Line dO"
60 FOR n=l TO 96: IF n>96 THEN GO TO 135: REM **F i
eld counter
82 IFo$(n,l,1)=" " THEN NEXT n: GO TO 135
90 FOR y=n+l TO 96: REM ** comparison counter
100 IF o$(n,l )=o$(y, 1 ) THEN FOR m= 1 TO 7: LET o$(y,
m)="": NEXT m: REM ** Delete dup-licate
1 10 NEXT y
120 NEXT n
135 CLS : PRINT AT 10,0 ; "E I i mi nate skips in 96 Name
array"; FLASH l;»Line 140"
140 FOR n=1 TO 96: IF n>96 THEN GO TO 152
142 IF o$(n,1,1)<>" " THEN NEXT n: GO TO 152
14^4 FOR y=n+1 TO 96: IF y>96 THEN NEXT n: GO TO 152
146 IF o${y,1,1)=" " THEN NEXT y: NEXT n: GO TO 152
148 FOR g=1 TO 7: LET o$(n,g)=o$(y,g) : NEXT g: FOR
g=l TO 7: LET o$(y,g)="": NEXT g
150 NEXT n
151 CLS : PRINT AT 0,O;"The file FLASH l;a$; FLA
SH 0;" is now Purified" "It^t OTZ ^^AT ^
152 CLS : PRINT AT 2,0;"Your Choices are:"""<1> Re
-SAVE this file"'" (SAVE OVER old file"""<2> Bre
ak into groups of 12 name files and SAVE to
the Purity disk"""<3> SAVE this whole f i le to
the Purity disk"''"<4> Compare with ALL Purity
files for Repeats. """< 5> Flip Through File N
ame3"'"<6> LOAD another File"'"<7> Purify this File"
'"<8> Remove Skips Only": INPUT "Input choice ";z: G
0 TO (2=8)*VAL "140"+(z=7)*70+(z=l )*160+(z=2)*178+(z
=3)*160+(2=4)*370+(z=5)*600+(2=6)*50+(z<l OR 2>8)^15
Programml ng
January 1988
160 CLS : PRINT AT 10,0;"Split the 96 name array in
to 8 12 name arrays and save each to disk FLASH
l;"Line 170"
170 CLS : PRINT AT 10,0;"Thi5 is a PURE FILE SAVE.
To SAVE OVER EXISTING, keep same dlsk."'"To SAV
E on PURITY DISK, Install PURITY DISK"" "ENTER When
READY": PAUSE 4e4: CLS
172 INPUT "INPUT FILE NAME ";zi: PRINT " FLASH 1;"
SAVING ";z$: SAVE /z$ DATA o$(): GO TO 152
174 FOR n=1 TO 100: ON ERR GO TO 176: LOAD /"mx"+ST
R$ n DATA k$(): NEXT n
176 ON ERR RESET : LET b=(n-l AND n>t)+(l AND n<2)
178>LET a=0: REM * "a"counts the large fields in in
c- rements of 1. "b" numbers the disk files to sav
e.
180 FOR c=1 TO 96 STEP 12: REM *get groups of 12 na
me fields
190 IF c>96 THEN STOP : GO TO 340
200 DIM kS(12,7,31)
210 FOR y=l TO 12: REM ** count to f I I I a 12 name f
i le array
220 FOR g=1 TO 7: REM **count to f i 1 1 7 lines
230 IF o$(c+a,l,l)=" " THEN LET c=96: LET y=12: LET
g=7: GO TO 340: REM ** If first chr is aspace then
quit, no more names present
240 LET k${y,g)=o$(c+a,g): IF a=12 THEN LET a=0: GO
TO 300
250 NEXr g
255 LET a=a+l: IF a>12 THEN NEXT c
260 NEXT y
300 CLS : LET z$=STR$ b: PRINT ;AT 15,0;"Saving ""m
X"; FLASH 1; INK 6;z$; INK 5; FLASH 0;"""";: SAVE /"
mx"+STR$ b DATA k$(): LET b=b+1: LET a=0: NEXT c
310 NEXT c .
330 CLS : BEEP 1,20: PRINT AT 10,0;"Fi le name ";a$;
" has been split"' "into ";b-l;" groups named ""mx";i
+ ]• "through nix";b-l ;"""." ""ENTER to Continue,": PAU
SE 4e4: CLS : GO TO 350
340 IF k$(1,l,l)<>" " THEN GO TO 300
342 LET b=b-l : 60 TO 330
350 CLS : PRINT AT 10,10;"Your Choices:"' 'TAB 4;"1.
Qult"'»TAB 4;"2. Load Another File": INPUT z: IF z=
1 THEN PRINT "TAB 4;"lnstall BASIC Disk, ENTER": PA
USE 4e4: CAT : INPUT "Input Title to LOAD";a$: LOAD
/a$
360 CLS : PRINT AT 10,0;"lnstall Data file Diskette
"""ENTER When READY": PAUSE 4e4: CLS : GO TO 65
370 CLS : PRINT AT 10,0;"ivlow purifying against the
""rax"" files in Purity Disk."" FLASH 1;" Install Pu
rity Disk and ENTER": PAUSE 4e4: FOR r=l TO 200: ON
ERR GO TO 372: LOAD /"mx"+STR$ r DATA k$(): PRINT AT
15,0; "Checking number of Files "; FLASH l;"mx";r: N
EXT r
372 CLS : ON ERR RESET : LET i=r-l : FOR r=l TO i : P
RINT AT 10,0; "Processing file "; FLASH l;"mx";r; FLA
SH 0;" to Delete Repeats in "; FLASH l;a$: LOAD /"
mx"+STR$ r DATA k${)
374 FOR n=l TO 12: IF n>12 THEN GO TO 388: REM »*Gr
oup counter
376 FOR y=l TO 96: IF y>96 THEN GO TO 386
378 IF o${y,l,1)=" " THEN GO TO 384
332 IF k$(n,l)=o$(y,1) THEN FOR m=l TO 7: LET o$(y,
m)="": NEXT m: REM ** Delete dup-licate
384 NEXT y
386 NEXT n
388 NEXT r
396 LET b=i+1: GO TO 135
500 FOR v,'=7 TO 12: LOAD /"mx"+STR$ w DATA k$(): FOR
z=1 TO 12: LPRINT z;" ";k$(z,1): NEXT z: NEXT w
550 STOP
600 FOR w=l TO 100: ON ERR GO TO 602: PRINT w;" ";o
$(w,1): NEXT w: STOP
602 ON ERR RESET : PRINT FLASH 1: PRINT '"ENTER WHE
N READY": PAUSE 4e4: CLS : GO TO 152
LET LOOKER
SDOS MIL LIST Oa^PANION Ito. 2
Jtoll files, isile^txjae listii^, strode listings,
etc, all have or^ thing in conraon. After the second
listing is tucked away in diskette, things
degenerate into confusicn. "Mios on first, what is
in centerfield, and why is the pitcher". Remsmber
that skit? "LIST LOOKER" is deceiving by its
shDrtr^ss. Ihis utility will lock at any LIST FILE
that is saved as a Character Array of thrse
dinensions. Exanple, you have a 100 nane array
containing "full name, Apartnent rxnriber, Street
address, City and State, plus other data, making
each a 7 line field. The "dinensicn" of the array
would be A$(100,7,31), "31" being the number of
characters per line. Its kinda hard to see what is
in a file just looking at the Disk Directory, isn't
it?
LEST LOOKER will X-RAY that file and stow you
its bones. List Looter loads in from disk, a
prcxipt is on screen giving three choices: 1 . WAD an
Array, 2. LPRINT Listing, 3. Screen Print Listing.
When <1> is elected, you are pronpted to "Install
Data Disk", then a touch of ENTER gets the Disk
Directory WIIH A miWI to "mm ARRAY TITLE". If
you are like ne, your diskettes ae kinda
disorganized. So if that directory doesn't contain
the data that you are loddng for, just HIEAK, type
GO TO 5, and you can install another diskette to ^t
its directory and loading proipt.
The data arcs^ autcoatically LOADS after input
of its title. Ihen <3> will get a screen print out
of, each of the groups, numbered from 1 to the end
HLiniber. Exanple, if there are 50 nanes and
9
Programming
January 1988
addrssaes, each will screen print under its field
riimber so that you can identify the nanes that you
my be interested in. Ihe "3. LPRIMT LISTING" lets
you get a ccaiplete print out of all of the listing.
'Ihis tinB however, you can select the "rajraber of
Unas to print", "TAB", and "S'ACES BEIWEEN". So,
wtot does this do for you? IHINK! You got it!
You can print print LAEELS, by ir^jut of "4 Fields",
2 spaces, and 5 for TAB. Or, you can irpat 7 lines
anl ^t whole groups of data fields.
Maybe you dant know how wan^ naoes and how many
lines per name the array has. It really doesn't
matter, as the program "sniffs for total number of
fields", then tells yai that, plus the number of
lii^s, at line 130. Ihe BiPUIS then governs the
print fornat. Ihis is a excellent "companion
utility" to use with mailing list data files
^nerated by "SDOS MAIL I"!ERGE". Also, it works with
"Ririty Files". "Ihe three programs go hand in glove
to give you conplete processing of all kinds of
Array E&ta Files.
THEEROGRamnC
TYbtb are several significant tips of
prDgranimLng in LEST LOOKER. Lets take them line by
line. Lire 5 (the starting line), gives the
<LET/P=0> to initialize the Oli^r SAFE printer
driver. Other Disk Operating systems will need to
have a different program statement hare to
initialize a printer driver. Ihen the POKE 23324,10
is to tell the system to give a LINE FEED with each
Carriage Return. If your printer does not need a
LBE FEED, then Omit this. Ihen LINE 10 gives the
vay to CAT the Disk Directory, and put a prompt on
the screen directory. After the proopt, the Array
Title is LOADED by LOAD/A$DArA Z$().
LEE SO is executed to LOOK AT the ARRAY and
find its DIr'IE^JSIONs. Ttie "Z Counter" uses a (M EHR
to trip when the Number of M:e fields have been
counted. Ihe "G Counter" dc»s the sane for the
Number of Lims". Ihen Vars Z and D are ussd for
counter limits in the LPRING routine at line 20 and
the Scr^n Print routire at lire 60. This program
is short enou^ to really bite into and discover all
of its tridcs. Have fun doing it!
LEST UXXSRt ite LUST
5 LET /P=0: POKE 23324,10: BORDER 0: PAPER 0: INK
6: CLS : GO SUB 138: PRINT AT 10, 10;"0PTI0NS""TAB
4;'M. LOAD ARRAY""TAB 4;"2. LPRINT Listing""TAB 4;
"3. Screen Print Listing": INPUT "Input Your Choice?
";a: IF a<l OR a>3 THEN GO TO 5
7 GO TO (a=l )*10+(a>l )*90
10 CLS : PRINT AT 10, 4;" install Data Disk, ENTER":
PAUSE 4E4: CAT : INPUT "Input CHR ARRY TITLE";A$: L
GAD /A$ DATA Z$(): GO TO 5
20 CLS : FOR N=Z1 TO 12: ON ERR GO TO 40: IF Z$(N,
))(!)=" " THEN STOP
25 IF C>4 THEN LPRINT TAB T8;n
30 FOR Y=1 TO C: LPRINT TAB 10;Z$(N,Y): NEXT Y: FO
R M=1 TO SX: LPRINT : NEXT m
35 IF tw=l THEN FOR Y=1 TO C: LPRINT TAB 10;N$(Y):
NEXT Y: FOR M=l TO SX: LPRINT : NEXT m
38 NEXT n
40 ON ERR RESET : GO TO 5
60 CLS : FOR N=1 TO Z: ON ERR GO TO 80: IF Z$(N, 1 )
=" " THEN STOP
70 PRINT n: FOR Y=1 TO D: PRINT Z$(N,Y): NEXT Y: P
RINT : NEXT H
80 ON ERR RESET : PRINT ""ENTER WHEN READY": PAUS
E 4E4: GO TO 5
90 FOR Z=l TO 200: ON ERR GO TO 100: LET C=LEN Z$(
Z,1): IF Z$(Z,1)(1)=" " THEN STOP
95 NEXT Z
too ON ERR RESET : LET Z=Z-1 : FOR G=l TO 100: ON ER
R GO TO 110: LET C=LEN Z$(1,G): NEXT g
no ON ERR RESET : LET D=G-1
120 IF a=3 THEN GO TO 60
130 CLS : PRINT AT 10,0;"The Array has ";D;" Fields
.""AT 12,0;"lnput Nbr of Fields to Print. """( 4 f
or Labels )": INPUT C: CLS : INPUT "Input Start Nbr.
";Z1: INPUT "Input END Nbr. ";Z2: INPUT "Input TAB:
";TB: INPUT "Input Spaces Between: ";SX
132 CLS : IF c<5 THEN INPUT "Twin Labels? <1 > Yes-
<2> No ";TW
136 CLS : GO TO 20
138 DIM n$<4,31): LET n$( 1 )="TS-2068 UP-DAJE" : LET
n$(2)="1317 Stratford Ave.": LET n$ (3) ="Pan|ma City,
FL 32404":^ RETURN II
10
Programming
- OR -
Adapting Software to Printers
The article about printer control In the
October issue brought forth enough response to
indicate that a more comprehensive reference should
be attempted. Apparently many users are having
problems In this area. One nice Lady wrote her
thanks, and several Gents wanted more Information,
But John Ollger wrote and pointed out a couple of
mistakes. These will be corrected in the text of
the f ol lowl ng.
Why doesn't software writers include enough
programming to make the software print "right out of
the box" with ALL TYPES of printers? Well, that
would be nice, but would likely require about 38K of
programming, and our TS-2068 has only 38K of FREE
memory to start with. So, usually a software Is
designed to print with a type of printer that Is
"compatable with" several brands, and instructions
given to make program line changes to adapt to other
printers. There are several DOT MATRIX printer
brands that use the "EPSON STANDARD", which usually
means tnat the printer maker copied the Epson
"Control Codes". Two "Standards" widely used with
Daisy Wheel printers are "QUEME Compatable" and
"DIABLO Compatable".
In order for a computer to communicate with a
printer, both devices must understand a common
language. That common language is called ASCII
(American Standard Code for Informaton Interchange),
Page number 239 of the TS-2068 User manual gives the
ASCII Codes and calls them "The Character Set".
Actually there are more codes in ASCII than the
TS-2063 uses, and a few of the codes in the TS-2068
CHR SET are not standard ASCII, but for printer
control, the codes In the User Manual will suffice.
So, we have the "common language", which is
ASCII, The computer understands It and so does the
printer. Now there are two jobs that the printer
must do. One is to PRINT CHARACTERS, and the other
is to SWITCH Its own modes of printing. To PRINT
characters the printer must be able to receive and
to respond rapidly to "streams of characters" sent
by the computer. The charcters are processed by a
"printer driver", a machine language software that
is supplied by the manufacturer of the "PRINTER
INTERFACE". Since the TS-2068 contains only a
printer driver for the little TS-2040 printer, ALL
interfaces for large printers are supplied by our
Cottage industries. Some of these are "Serial
Interfaces", but most arc CENTRONICS PARALLEL
i nterf aces.
Wo will delay the discusslovof Serial (RS-232)
January 1988
interfaces until the next Issue of UP-DATE. For
this discussion we will deal only with CENTRONICS
PARALLEL Interfaces, and only with the OLIGER and
AERCO Interfaces, These two "CP I " devices have
become the dominant ones for the TS-2063, the most
simple to use, and they use a minimal amount of
computer memory for their printer driver code. In
fact, the Disk Drive controller hardware contains
the printer driver code in its EPROH, thus using no
computer memory at all. These interfaces provide
the electronics circuitry to process character
streams and coded directions to a printer and to
RECEIVE the "Interrupt signals" from the printer.
The software "driver code" is an extension of
the TS-2068 ROM, which lacks the "built In
instructions" necessary to send data and commands to
the printer. While the Oliger and AercoCPI
Interfaces are different in circuitry, the driver
codes supplied with each can be used with the other
Interface, Now lets get to the two functions of
these CP I interfaces. One function, and the most
complicated. Is the processing of Character streams
to the printer. Actually this is the most simple to
use, <LPRINT> does it! You dont see the many
complicated functions that take place, and you dont
have to worry about It.
The other CPI function Is to "Process Control
Codes to the Printer", to make It do such things as
Change from Elite Style to Pica Style, Roll up a
Page, or the other mechanical functions that the
printer does. The Interface uses "OUT PORT 127" as
the communications path to the printer, and the path
back from the printer for "Interrupts", So, the
"ASCII COMMAND" that a printer needs to do a desired
function is sent "OUT through PORT 127", A typical
direct command to click up a i i ne space is <OUT
127, 10>, "10 decimal" is the industry standard
ASCII CODE for printers to perform a LINE FEED,
There are 32 "single character codes", 0 through 31,
In the TS-2068 Character set that can be "sent out"
In this manner.
Actually there are 255 character codes that can
be sent out to the printer, but only 32 can be sent
out "without a character being printed". All of the
other 223 codes will cause something to be printed.
Example, <OUT 127, 65> will result in the character
"A" being printed. This is because ASCII CODE 65 is
assigned to the character "A", and the interface
processes data characters to be printed. Some
printers use as many as 80 ASCII CODES to perform
internal changes. For example, a Diablo Daisy Wheel
printer uses ASCII CODE 79 to "SET BOLD PRINT", BUT
<OUT 127, 79> PRINTS a "0"! The solution to "sending
printable ASCII CODES" to the printer is to first
send the "ESC COMMAND".
The "ESC" code is "27", So, using the aoove
example, <OUT 127, 27> then <OUT 127, 65> will command
II
Programml ng
January 1988
the Diabio printer to SET BOLD PRINT. The ESC cods
(27) tells the printer to "Expect a CONTROL CODE
NEXT". Printer manuals vary as to how their CONTROL
CODES are given. Most manuals have a table of
control codes with numbers given in both HEXADECIMAL
and DECIMAL. A typical such expression would be
given in brackets as (1B,4D)H (27,77)0. The first
group is given in Hex and the second group in
Decimal, In this case, our TS-2068 command would be
<OUT 127, 27> <OUT 127, 77>. Another way that the
SAME command group could be presented is <E5C M>.
"ESC=27 and the Character Code of "M" is 77".
Still another way given in some printer manuals
is <LPRINT CHR$(27)+M>, which isn't the correct way
of sending such codes with the TS-2068, but can be
intrepeted as OUT 127,27:0UT 127,77. So, with all
of these different ways of saying the same thing,
it's no wonder that printer manuals are confusing!
Incidentally, that ONE command group is used by
Epson printers to SET ELITE PRINT MODE. Command
codes to perform a single function may be as many as
six codes chained together. Example: (27,120,1)0
(155,120,1)0. The "D" for Decimal may or may not be
present. That command group SETS HI QUALITY MODE
for Epson printers. The command for the Aerco and
Oliger CPI would be <0UT 127,27: OUT 127,120: OUT
127,1: OUT 127,155: OUT 127,120: OUT 127, 1>, quite a
long group of OUTs to do just one switching
function I
Now its gonna get longer, because that group of
six OUT commands execute in about 100 milliseconds,
and the printer requires much more time than that to
respond to SWITCHING commands. For Software
programming lines to Command the printer, we must
have a "CHECK OF THE PRINTER STATUS" routine TO SEE
IF THE PRINTER IS BUSY before sending a control
code. When the printer is busy it places a
interrupt signal on IN PORT 127. If the printer is
busy then the software must wait until the printer
is READY before sending the control code. The
correct way to do this with the Oliger CPI is to use
the loop given in the interface manual, which is
<100 IF INKEY$ #3="B" THEN GO TO 100> <102 KtTURN>.
Then a control code group such as (27,45) would be
programmed in a line as: <50 GO SUB 100: OUT 127,27:
GO SUB 100: OUT 127, 45>. The line 100 will loop
itself until the printer is READY, then the line 100
IF condition will be FALSE and the RETURN will allow
the next OUT command to execute.
The above "INKEYS #3" polls the IN PORT 127 for
the bits used by printers to signal its status to
the computer. But, this procedure requires a
interface driver that processes the INKEY #3 syntax.
If you use another type of interface you should
check its manual for a PRINTER STATUS CHECK routine.
The use of INKEYS #3 returns a "Improper I/O device"
report when used with some other interfaces. If you
get such a report code you can turn OFF the printer
and type <PRINT IN 127>. Then use that number in
the status check routine. My system produces 253
when the printer is BUSY. Mr. Oliger tells me tnat
all bits of IN PORT 127 are not not controlled the
same with all models of the TS-2068. His words are
quoted: "A program loop such as the example given
(100 IF IN 127=253 THEN GOTO 100) (102 RETURN)
should not be used and this is not how the printer
interface manual instructs this to be done. This is
the kind of thing that works with one computer but
not on another, because all of the bits on IN PORT
127d are not used, and thus are floating. The
function INKEY$ If i should be used for this purpose
as detailed on page 6 of the Oliger Interface
manual
Pardon me for digressing into the complicated.
This is supposed to be a SIMPLE treats ie about how
to clear the fog in printer manuals and CONTROL your
printer with program lines. Wo will get back to
that. Other interfaces such as TASMAN and A&J use
LPRINT CHR$ instead of OUT 12 7. Many printer
manuals express their EXANFLE commands in this
manner, LPRINT CHRS 27, as the ESC command, instead
of OUT 127,27. Thats alright if you know how to
intrepet such red herrings. The Oliger and Aerco
interfaces just wont work with LPRINT CHR$, and must
have OUT 127, number.
To sum up: When ESC is given, it means OUT
127,27. When a letter character is given as a
command code, look up the ASCII code for the letter
on page 239 of the TS-2068 User Manual and use the
CODE number as the command. When constructing
program lines to Command the Printer, each OUT 127
should be preceeded with <G0 SUB> to the "STATUS
CHECK" routine, which for the Oliger and Aerco CPI
is <100 IF INKEYS #3="B" THEN GO TO 100> then a
following line <102 RETURN>, The line numbers can
be of your choosing. There Is no limit as to the
number of "chained commands" that can be in one
program line. Many printers require as many as six
chained commands to perform one function change of
the printer.
You cannot use HEXIDECIMAL numbers in your OUT
127 command, HEX numbers must be converted to
decimal, if not given in the printer manual. Page
239 of the TS-2068 User manual gives the codes in
both Hex and Decimal. Printer control sequences
given in a printer manual, such as: (ESC * 0 2) must
be intrepeted by looking up the codes for "*" (42),
for "0" (79), for "2", (50). We know that ESC is
27. So, the chained commands would be entered in a
program line as follows: <500 GO SUB 100: OUT
127,42: GO SUB 100: OUT 127,79: GO SUB 100: OUT
127,50: RETURN >. GO SUB 100 would be to the INKEYS
#3 routine to check the printer status.
Your printer and the software can both be OK,
Programming
January 1988
but all you get is partial lines of print that
lap over onto tlie next line, because of improper
printer switch settings. Most softwares completely
control the printer and require that no MARGINS be
set at the printer, the auto PAGE ADVANCE be turned
OFF, the printer LINE JUSTIFICATION be turned OFF,
the PORPORTIONAL PRINT PRINT SPACING be turned OFF,
and for letter size pages, the LINES PER PAGE
setting at the printer should be 60 lines per page.
Then the software and the printer wont be fighting
each other to control margins, character spacing,
and page length. Let the software do the
controlling, and let the printer be DUMB, just
responding to "Simon Sez" commands given by the
software.
The printer switch that sets a LINE FEED with
each CARRIAGE RETURN should be ON, Then a line feed
will occur each time a line is printed. A Carriage
Return command is sent by the sotware each time a
line has printed, or the "partial last line" of a
paragraph, f>low this Just about sums up "everything
that anyone wi II ever need to know about Commanding
printers with the Oliger and Aerco CP Interfaces",
Next issue we will discuss a RS-232 Serial
Interface. In the meantime perhaps someone would
like to sond In a treats ie about "printer commanding
with the TASMAN CPI. Permission Is hereby given for
TSUG Clubs to make re-prints of this article or
excerpts thereof,
FlRMCriOL mSES OF SCWEBHI FOILES
- AND -
DISK DEPENDANT PROGRAMMING
if I had to complain about something i would
gripe about the 6912 bytes of disk space that is
required to SAVE a Screen File. A whole screen,
when full, contains 22 X 32= 704 characters. Of
course there is much more to a displayed screen than
just the places reserved for characters to be
printed, but 6912 bytes? A program line that
constructs a screen takes up quite a lot of our
precious FREE Memory. The more a software can do,
the more MENUS and screen displays are needed.
Usually a well designed screen will cost about
600-1000 bytes of FREE MB^ORY. A software that has
a lot of functions may need as many as a dozen such
Menu and Information Screens, Ttie FREE Memory used
for a dozen such screens would be between 6 and 12K
bytes. Look at FREE memory in another way, A full
page of printed data is usually about 3000
Characters. So, 12 screens within the softv/are
programming costs us the memory capacity of about 2
to 4 full pages of data.
Is It economical to spend 6912 bytes, times
12=82944 bytes of disk space to save 12 screens and
"boot the screens in when needed in a program"? You
bet it is!! And, the SCREENS LOAD and SAVE is one
of the most useful functions of a Disk Drive. The
programming (SAFE) <1000 LOAD /"1"SCREEN$> (AERCO)
<CAT "1,SCR",> is all that Is needed to bring aboard
a screen menu that would take up 1000 bytes of FREE
Memory, 12 such lines of programming costs only 132
bytes of FREE memory. We have a million K of disk
space to waste, but every byte of FREE memory is
like the last lick of a ice cream cone. How sweet
it is! And who cares about a 6912 byte chunk of
DISK Space? I rememember once testing the
practicality of booting screens from Cassette,
While the screen was loading in the grass on the
lawn grew enough that it needed mowing! And I
watched as a Cardinal built a nest, layed her eggs
and the young birds learned to fly! All while that
screen was loading from cassette. Well, maybe thats
stretching it a bit. Anyway, <L0AD /"1"SCREEN$>
pops a menu on screen in 2 and one half seconds
flat! Thats FAST and efficient!
The "doing it" is too easy to talk about. You
just program your screen In the normal way with
PRINT AT statements in a line of programming. But
now you can let It all hang out and create a real
beautiful screen with color changes, full words
Instead of abbreviations, and put nice borders
around it. When finished and the screen is really
beautiful, just BREAK, and type <SAVE/" 1"SCREEN$>.
Next DELETE the program line, and re-enter the same
line with 1000 LOAD /"I "SCREEN J. Do this as many
times as you have Menus and Display screens in the
software. When finished, your program will have
more meaningful menus and you'll have saved enough
FREE memory to add many more functions to the
program.
Now what we have just done Is to create a "Disk
Dependant" software. It wont work without the disk
drive. You are sacrificing a good bit of disk space
to conserve Computer FREE Memory. Later we will use
disk space to store "Segments of the Software
itself", and MERGE these segments to the main
program in memory as the program routines are
needed. For example, suppose that you have a
software that has a Data Base Manager, a Word
Processor, a Mai I Merge, You have used a lot of
programming for these three comprehensive functions,
and have thus sacrificed FREE memory for DATA
STORAGE. While you are using the Data Base Manager,
you really do not need the Word Processor nor the
fjlail Merge to be on board.
So, when the SAFE Merge function is
implemented, we can have our cake and eat it too.
Software programs can be segmented so that only the
major function that we need will be in memory. The
other major functions will be on stand-by in disk^
TIMEX CLUBS OF NORTH AMERICA
TS-2068 SUPPLIERS
Fol I owl ng Is a I i st of Ti mex CI ubs of
North America, A few may be missing and
will be published as Information Is
received. Some of these clubs publish
excellent newsletters that are worthy of
subscribing to. For those clubs that may
be Interested, Up-Date Is willing to
publish a "Club Edition" that consolodates
Inputs from participating clubs. If
sufficient Interest Is forthcoming.
Suggestions will be welcomed.
Following Is a listing of Suppliers of Software and
Hardware for I he TS-2068, There must be more, and Up-Date will
publish additions to this listing as Information Is obtained.
220 Centre St.
Sullivan, NH 03445
Cuyahoga Valley Software
615 School Ave.
Cuyahoga Falls, OH 44221
APR Software
1606 Pennsylvania Ave. #204
Miami Beach, FL 33139
Box 18093
Austin, TX 78760-8093
Oan Elliott
RR-I, Box 117
Cabool , MO 65689
Footo Software
PO Box 14655
Gainesville, FL 32604
John McMlchaol
1710 Palmer Drive
Laramie, WY 82070
Knighted Computers
707 Highland St.
Fulton, NY 13069
S.E, Michigan Group
Box 614
Warren, Ml 48090
G.U.T.S. Group
6625 Clifford Drive
Cupertino, CA 95014
Kansas Area Users
4557 Cherry
Wichita, KS 67217
TAS BAM User Group
PO Box 48961
St Petersburg, FL 33743
Newsletter
TSUG of Phi ladelphia
PO Box 53490
Phi ladelphia, PA 19105
Westmoreland TSUG
PO Box 3051
Greensburg, PA 15601
Vashon I si User Group
PO Box 199
Vashon, WA 98070
Ml ie High
914 S. Victor Way
Aurora, CO 80012
Hampton Roads
1 12 Kohl er Crescent
Newport News, VA 23603
Newsl etter
Sincus News
1229 Rhodes Road
Johnson City, NY 13790
News I etter
L. I.S.T.
10 Idle Way Drive
Center Point, NY 11721
News I etter
Toronto Canada Group
PO Box 7274, Stn A
Toronto, Canada M5W 1X9
Newsletter
San Francisco Area
PO Box 1312
Pad flea, CA 94044
Newsletter
l*lorth Carolina Group
206 James St.
Carrboro, NC 27510
Miiwaul<ee User Group
5052 N. 91st St.
Mi lwaui<ee, Wl 53225
Newsl etter
Sun Lake Group
1200 Lake Drive
Grand Island, FL 32735
Vancouver Group
2006 High View Place
Port Moody, BC V3H 1N5
Canada ^
CCATS
1419 1/2 7th St.
Oregon City, OR 97045
Newsl etter
NE Florida TSUG
6634 Oriole Ave.
Jacksonvl lie, FL 33216
Newsletter
TSUG of Orlando
808 E. Anderson St.
Orlando, FL 32801
S.T.U.N.
Rt. 1, Box 21
Glade HI 11 , VA 24092
u
PO Box 280298
Dallas, TX 75228
Basically Programming
2528 W. Olive
Fullerton, CA 92633
Beaver Computer Products
756 Fleming Ave.
Winnipeg, Manitoba RIK IV5
Canada
Bob Crecco
1627 Dewey St.
New Albany, IN 47130
Byte Back
R+. 4, Box 54
Leesvl lie, SC 29078
Byte Power
1748 Headowvlew Ave.
Pickering, Ontario LtV 368
Canada
Chal-ChI Chao
73 Sullivan Drive
Morago,CA 94556-1209
Curry Computers
PO Box 5607
Giendale, AZ 85312-5607
Quantum Computing
PO Box 1280
Dover, NJ 07801
RMG Enterprises
1419 1/2 7th St.
Oregon City, FL 97045
S4K Enterprises
2107 SE 155th
Portland, OR 97233
Sharp's Inc.
RT 10, Box 459
Mechanclsvllle, VA 23111
SInclink Co.
6675 Clifford Drive
Cupertino, CA 95014
G. Russell Electronics
RD-I Box 539
Centre Hal I , PA I682B
Grey i Clifford Computer
PO Box 2186
inglewood, CA 90305
Gulf Micro
1317 Stratford Ave.
Panama City, FL 32404
Heath Computer Services
950 E. 52 South
Greentown, IN 46936
Herb Bowers, Sr.
2588 Hoodshire CIr
Chesapeake, WA 23323
JRC Software
PO Box 448
Scottsburg, IN 47170
Jack Dohany
390 Ruthoford Ave
Redwood City, CA 94061
Jameco Electronics
1355 Shoreway Rd.
Belmont, CA 94002
Sincpac Software
5206-1 Cedarbend Dr.
Fort Myers, FL 53907-7514
SIrus Ware
6 Turning HI il Rd.
Lexington, MA 02173
Sunset Electronics
2254 Taravai St.
San Francisco, CA 94116
The 01 1 ger Co.
11601 Whidbey Drive
Cumberland, IN 46229
Thomas B. Hoods
PO Box 64
Jefferson, NH 03583
Larken Electronics
RR-2
Naven, Ontario K4B IH9
Canada
Mark L. Fondrick
PO Box 2392
Secaucus, NJ 07004-0992
Market Enterprises
PO Box 2392
Secaucus, NJ 07094-0992
Heta Media
726 W. 17th
Vancouver, BC V5Z 1T9
Canada
Mountaineer Software
749 Hi 1 1 St. 16
Parkorsburg, WV 26104
Novel soft
35 Candle LIteway
Niilowdale, Ontario H2R 3J5
Canada
Paul Bingham
Box 2034
Mesa, AZ 85204
Peripherals Direct LTD
PO Box 4301
Northbrook, IL 60065
Variety Sales
325 W. Jersey St. #20
Elizabeth, NJ 07202
WMJ OalB Syslmtn
4 Butterfly Drive
Hauppauge, NY I I 788
Wymi i Corp.
Box 5904
Boil Ingham, WA 98227-5904
Zebra Systems
78-08 Jamaica Ave.
Woodhaven, NY 11421
Articles and Reviews
January 1988
The TS-2068 DISK DRIVE SYSTEMS
Ooablnatlons to Achieve Increased tepabMItle
OWNER'S Basic — y Plus — * Additional ^ EQUALS Additional Capabilities
Disk System Device
Oliger SAFE
Disk System
SPDOS Disk-
Software
-> Oliger SAFE DOS + RAMEX DOS Formats
Two Simultaneous Disk Operating Systems
Oliger SAFE
Disk System
LARKEN SKDOS
Cartridge
-> Oliger SAFE DOS + Larken DOS Formats
Two separate Disk Operating Systems
Larken Disk
System
► Oliger SAFE -
Board A
-> Larken DOS + Oliger DOS Formats
Two Separate Disk Operating Systems
Larken Disk
System
' Aerco FD-68 <
Disk System
Larken DOS + Aerco DOS
Two Separate Disk Operating Systems
Aerco FD-68
Disk System
' Plus —4 Aerco on-board
Extra Memory
Two Disk Operating Systems (RP/M + Aerco DOS)
Extra Memory banks for programming
Aerco FD-68
Disk System
^ PI us — -> Larken SKDOS
Cartridge
^ Three Disk Operating Systems
{above, plus Separate Larken DOS)
Plus RAM DISK if Extra Memory present on FD-68
RAMEX Disk
System
« Not aware of possible
Combinations
RAMEX SPDOS Operating System
RAMEX Disk System is no longer supported
by a manufacturer.
TOS (Zebra)
Disk System
» Not aware of Possible
Combinations
-> TOS Disk Operating System
TOS Disk is no longer supported
by a manufacturer.
All of the above Disk Systems are compatable with Cassette LOAD and SAVE operations.
Cassette Is the "Transfer Medium" to SAVE programs that are formatted by any disk system; then
re-load to the TS-2068 that has a different disk controller Installed; then EDIT the program
lines and MODIFY the DOS SYNTAX; then SAVE to Disk with the DOS that Is In use. The Computer
must be turned OFF to transfer from one Disk System to another. There are two exceptions to
this. The Oliger SAFE and SPDOS software combination provides two DOS systems Co-resident. The
Aerco FD-68 Disk System has Aerco DOS and RP/M Co-resident.
7
Articles and Reviews
January 1988
SPDOS -for North America
Ian Robertson
SPDOS was originally isarketsd in the UK by WATFORD ELECTRONICS
as a disk interface and operating systea. KEHPSTON (the joystick
interface people) later sarksted a version which used a ssaller
aiount of RAH, approx. 700 bytes (Watford used about 8k). A
varient of tlie SPDOS interface was narketed in North Aaerica fay
RAHEX IMTERNATIQNAL LTD. and known as the MILLENNIA K. This is
the systei that in 1985 introduced se to the wonders of a disk
systea (later to be followed by the OLISER, LARKEN, BETA PLUS,
KEHPSTON and finally the CUHANA). The SPDOS presently being
aarketed by the CUYAHOBA VALLEY SOFTWARE WORKS is a aodification
of SPDOS far the 2068 running on Oliger hardware. It is sold
under license froi ABBEYDALE DESI5NERS LTD., who wrote SPDOS. As
a tatter of fact, the awunt paid (by CVSW) to Abbeydale is a
Urge portion of the selling price. This group has not written
this software to sake Boney, but rather to help extend the life
of our coiputers. The DOS operating systei is available on two
5.25 inch disks, for either 40 track DSDD or 80 track DSBD
drives.
The first disk is an Qliger disk with a "boot" that replaces
soie of the hardware of the Hillennia K interface. The second
disk is the "SPDOS Systei' disk.
HOM IT WORKS:
SPDOS is a RAM based DOS. Because of that it uses several K of
RAM and can be run concurrently with the Oliger DOS (which uses
no RAM) in operation. Certain SPDOS coiaands are read fro* disk
and the systea disk should be in Drive *1 (Oliger drive 10).
Since SPDOS is also conpatible with the Millennia K systea, it
works only in the 2068 lode. Disks which were written on the
Rasex systea can be read and written to. However these disks
should be considered as Data disks (disks without the operating
systei on thei).
The DOS occupies aeaory froa 5B500 to roughly 63500. It supports
sequential files and prograa overlays. The overlays are prograa
segtents with line nuabers that are loaded in froa disk
replacing existing ones, aaking aeaory use sore efficient and
adding structure to the prograi.
The DOS is as fast as the Oliger in Loading and Saving. SPDOS
allows 144 directory entries per disk and uses a ainiaua of IK
for a file. A faraatted 80 track drive will have aproxiiately
785K of space free to write to. Each SPDOS track is organized
into ten 512 byte sectors. SPDOS supports coaaands like MOVE,
ERASE, and will autorun prograas naaed "AUTO* when the systea is
Booted up. It has the ability to perfos a selective CAT. All
SPDOS coaaands Bust be prefixed by the coaaand 'PRINT # 4:'.
Other coaaands are used in the noraal way. Those of you using
the latest version of the LARKEN disk interface will recognize
this syntax.
Several utility prograas are included: SYSCOPY which will back
uo SPDOS, COPY which will assist in selectively copying disks,
ERASE which does the saae for erasing files, MINIDOS a truncated
DOS located at 49644 to 53600, and MAIL/BAS a deaonstration data
base.
The SPDOS systes should be considered an enhancetent to the
Oliger Safe Disk Operating Systea rather than a replaceaent. It
will be of the aost use to people who write a lot of their own
prograas, and those who have a Millennia K systea or know users
who do as it adds a certain aaount of coapatibility to the 2068.
For exaaple, Rasex aarketed 2068 disk versions of MASTERFILE,
TASHQRD II and QMNICALC. This software should allow these
prograas to he run on the OLISER disk systea, but I aa not sure
about the ability to print, using an 80 coluan printer. The
RAMEX systea is coapatible xith the TASMAN C Centronics
interface, while the QLIBER is coapatible with the OLISER/AERCO
Centronics interface.
KHERE TO BUY IT:
The cost is $24.95 + $1.50 for postage and is available only
froa the CUYAHQfiA VALLEY SOFTWARE WORKS, 615 School Ave. ,
Cuyahoga Falls, Ohio 44221.
2068 : Larry Kenny of LARKEN ELECTRONICS has done
it again'. He has produced a disk interface cartridge, that
plugs into the cartridge port, which turns your RAHEl interface
into a LARKEN interface. And it works! It coies with the DOS
on a 2764 Eproa and the FORHAT software on tape. The FORMAT
prograsfle is loaded into the coaputer and after configuring it
to suit your (up to 4) drive systea, it loads itself to disk. I
have tried it on both 3SDD 3' and 5 1/4* DSQD drives, without a
problss. The LARKEN extended basic coaaands also work on ay
RAMEX hybrid. Now for the interesting part - the cartridge does
not have to be resoved froa the cartridge port when the m£i
DOS is used AND by switching off the RAKEX DOS eqroa, the RAH£,t
does not have to be sBodified in any way.
Prof I le of the Author
Mr. Ian Robertson Is the Liaison Officer for
the Toronto Timex Sinclair User Group and a regular
writer for their fine publication "Sine Link". Ian
has every computer that bears the Sinclair name and
is current on all. Despite pressures of business
and family Ian finds time to contribute his
knowledge. We look forward to his future article
about SPDOS, The QL, and other Items of Interest.
8
Articles and Reviews January 1988
LARKEN DSK400 DISK OPERATING SYSTEM
A review
by G.F, Chambers
Larry Kenny has come out with what in effect is his
third generation disk interface system. Possibly one
should say his 2nd generation, since It could be said
that the first generation had two phases.
Lets review the background:
The first system was based on an EPROM DOS (which
was bank-switched into the 63488 area of memory), plus
several disk DOS's. The second phase of this first
system provided a cartridge DOS which was bank-
switched into the ROM area of the computer (when disk
functions were required), and eliminated the need for
the EPROM- and disk-based DOS's. The cartridge also
provided several supplementary features not available
on the intial system. This system was confined to the
use of two DSDO drives, and formatted disks to a 160K
capacity and maximum of 50 files.
The new system, the DSK400, subject of this review,
consists of a cartridge board very similar to the
original, plus a new interface board. The new inter-
face board measures about 6 inches by 2 inches, and
mounts horizontally behind the computer. A ribbon
cable for the drive plugs into a connector at the
right-hand end of the board. At the other end of the
board are an NMI button and a 9-pin joystick
connector. Possibly the unit could fit into an empty
Memotech or Gladstone ZX81 64K RAMpack case. The board
is equipped with a gold-plated female connector with a
tinned male through-connector, for adding other
peripherals. Four of the nine chips on the Interface
board are socketed. The quality of the board Is very
high.
The system can handle a variety of drives, up to a
maximum of four. It is said to be capable of handling
3", 3h"i and S^s" (not 8")single or double sided drives
in single-, double-, or quad density. I have only
tried it on a SA455-type 5^" drive in the DSDO mode.
In this mode disks can be formatted to hold just over
400K.
The sytem uses all the familiar Sinclair commands,
including CAT, ERASE, LOAD, SAVE, MERGE, OPEN #, CLOSE
#, FORMAT ,also GOTO and PRINT. All disk commands are
prefaced with PRINT USR 100: or PRINT #4:
The system Is compatible with the 2068 and the
Spectrum mode, A Spectrum EPROM can be mounted on the
cartridge and switched in with a short BASIC command
from the 2068 mode. It has an AUTOSTART mode, by which
you can boot a program into memory by holding the
ENTER key operated while powering up the computer.
Only one program per disk can be handled this way. I
usually make this a MENU program to select the program
that I want from the disk. This AUTOSTART program can
be used to automatically boot the computer into the
SPECTRUM mode from a cold start, and produce the menu.
With an appropriate EPROM DOS the cartridge is
also suitable for use with several other disk systems,
i such as the AERCO, RAMEX, OLIGER; Improving the
I performance of these sytems significantly. It can also
I be used with the OS-64 and LROS cartridge chips, by
' mounting them on the cartridge board.
I
A program to format disks is supplied on disk,
along with a program to facilitate copying disks using
two drives. The FORMAT program will format disks as
either double or single sided, and to 40 or 80 track
density.
Programs can be saved (and loaded) with all the
command forms used with tape, as for example:: SAVE
"progrm.Bl", SAVE "prognruBl" LINE 100, SAVE "prog, CI"
CODE start, length, SAVE "progrm,Cl" SCREENS, SAVE
"progr,Al" DATA (), SAVE "progr.AS" DATA $().
Programs can be removed from the disk using the
ERASE coirenand. Tracks so erased become available for
subsequently saved programs.
The NMI (snapshot) button means that you can
capture to disk those unbreakeable programs on tape.
Simply load your program, press the NMI button and the
program will be transferred to disk. It captures the
complete memory from address 22490 upwards, and uses 9
tracks of a disk. Loading one of these programs from
disk takes just under 7 seconds. A disk can hold 8 of
these programs, and have 7 tracks spare for menu, etc.
Programs such as Tasword, Timachine, Pro/file,
Mtermll are readily modified to run on the DSK4D0
system. Mscrlpt with Jack Dohony's mods can be
similarly adapted.
The joystick port accepts the 9-p1n connector
standard on joysticks, and works with those programs
which are provided with the Kempston joystick option.
The DUMP. 81 and C0PY2D.B1 programs supplied on disk
with the system use a modified disk DOS which can be
used from BASIC programs to control the drive
operation. This means that disk utilities can be
written In BASIC to perform a variety of tasks,
similar to what has been done with the earlier LARKEN
systems. Typical of this are three programs which I
have modified for the DSK400. They are a RENAME
program , which will rename programs on disk; DOCTOR
with which one can inspect and repair errors on disk
tracks; and INDEXER which maintains a file of programs
on a disk collection.
The DSK400 Includes a number of Extended Basic
commands. These permit the placement onscreen of up to
i three "windows" of any size, colour, and position; and
writing to them in proportionally spaced characters.
Also there is a set of 7 graphics patterns which can
be called up as desired to fill areas of screen. A
CIRCLE command will fill in selected areas of the
00 psf aJo f
10
Articles and Reviews
88
screen with a selected pattern, INK and PAPER commands
will instantly change p:iper/ink colours. POKE will
poke numbers higher than 255 Into tv/o addresses
automatically.
There Is buint-in printer driver software by which
a large printer may be used, making use of the LLIST.
and LPRINT commands. This feature is accessed by the
command: PRINT #4: OPEN #3,"lp". A drawback to this
feature is that I found it impossible to control line
length; if there is a control, I could not find it. As
a consequence I found my printer putting out lines
with 108 characters in them.
Final Conclusions: An easy-to-use system which will
greatly enhance the use of the TS2068. Highly
recommended.
Available from: Larken Electronics, R.R.#1, Navan,
Ontario, Canada K4B 1H9 Price for interface board,
cartridge board and drive connector cable: Can $145.
(You will also need to purchase the disk drives and a
power supply for them)
The LKDOS Cartridge
In addition to the Larken Disk system that Is
reviewed above, there Is another Larken development
that deserves mention. It is the LKDOS CARTRIDGE,
which contains the Larken DOS and operates with two
other Disk Controllers for the TS-2068. The LKDOS
Cartridge plugs into the Cartridge Compartment of
the TS-2068. When used with OLIGER SAFE Disk
system, Board B of the Ollger system Is removed.
Then the LKDOS cartridge utilizes the Ollger disk
controller board as the controller. The result is a
LARKEN DOS System that formats and reads disks In
the Larken format, and has all of the Extensions to
Basic as discribed in the above review.
The LKDOS Cartridge can also be used with the
AERCO FD-68 Disk Controller. The LKDOS uses a
Separate EPROM for use with Ollger or Aerco disk
controllers. The results are the same, a Larken
DOS. When used with Aerco FD-68, the built In extra
memory of Aerco Is used as "RAM DISK". This unique
feature "formats" 40K banks of RAM as if the RAM
were anther disk drive In the system. A 256K Aerco
Ram is used as if It were four more disk drlvec,
each having 4»K of storage. The Ram Disk Is
somewhat faster operating than a disk drive, but of
course, the data storage is gone when you turn off
the computer.
Before using the LKDOS cartridge with the Aerco
FD-68, a small modification to the FD-68 Is required
to add a switch. Details are given In the Larken
documentation. No modification Is needed with the
Ollger Safe Board A. Please refer to the article in
this issue titled "The TS-2068 Disk Drive Systems"
for more information about the use of the LKDOS
cartridge. For further information write to Larken
Electronics, address given In the above review,
11
Th« Lar'i
an disk iyat.am tor thm Tl««x 2063 is fully Sp.ctr-ja
I «nd «iao can b« U4|«<1 with Aro» or Lro« cartridg. roa«
It supports *H tolc.n k«yvorda - CAT, ERASE , LOAD , SAVE , MESGE ,
OPEN* , CLOSE* and aiao GOTO and PRINT that w«r« lataadad to ba
uaad with a .xtarnal aaaa atoraga davica. FORMAT and HOVE ara
auppllad aa prograaa that run la raa.
Tha way thaaa eoamanda ara lapllaantad by tha Larkan ayataa la
to pracaad thaa with a Sand uar 100:
as: RAND USR 100: CAT
For aaaiar typing and a ahortar coaaand tha PRINT »*: eoaaand
can b« uaad Inataad of Sand Uar 100:. To uaa PRINT »*: you auat
firat Opan Channel 4 to tha dialtdriwa with -
RAND OSH 100: OPEK t4,-dd-
You can now pracaad all LXdoa and Ex-baaie eoaaanda with
PRINT »*: ag: PRINT »*: tOAD "fllanaaa.ax'
If tha Print eoaaand la uaad bafora it haa baan
laltiallaad, arror 0 - Invalid Straaa will raault.
IXDOS FIX a Haaas
Tha only othar diffaranca batwaan
atandard caaaatta eoaaand, la tha fila
Lkdoa uaaa a file oaaa that contains i
charactara followad by a two charactai
aaparataa tha prograa naaa froa tha axtanaion. Tha first lattai
of tha axtanaion talis tha dos what typa of flla It is . It auj
b« an A,B or C
'A' for Array 'B' for Baaic 'C for Coda
Tha aaeond lattar of tha axtaadloa can ba any charaetar axapi
If you ara saving a atrlag array, It auat ba a
Tha axtaasioa auat ba two charactara long-.
Tha only charaetar that can't ba uaad la a flla naaa la a 'T.
Thia la uaad aa a 'wildcard' charaetar for uaa in CAT aaarehas.
Seaa axaaplaa of fila aaaaa:
"Progra. Bl" A Baaic prograa
'sauA.Cx' A coda flla
-Nuaa.AS* A String Array
"Nuatars. Al' A Nuaarie Array
SAVE COMMANDS
Bafora you can aava your prograa* and data to tha disk, your
disk auat b« foraattad. (Saa aactloa oa aatup and foraattlag)
Any foraula or axpraaaion In a eoaaand can ba uaad.
ag: PRINT SAVE *« (TO 6)*".CT- CODE Start , End-Start
All variation* of caaaatta eoaaanda ara supportad.
Lkdoa eoaaand and
I ppograi
- Basic
prograa
.ngth
- Bytaa aava
- Nuaarie Array
- String Array
additional
PRINT #4: SAVE "Prog.Bl"
: SAVE -Prog.Bl* LINE 100
: SAVE 'Prog. CI* CODE start, 1^
: SAVE *Preg.Cl- SCREEN*
: SAVE -prog.Al- DATA ()
: SAVE "Prog. A* * DATA *()
Bafora aaviag aaka aura that tha wrlta protact aotch on tha
disk la net eevarad by a protact atlekar and that tha disk is
la tha drlva proparly vlth tha door eloaad.
EXTENDED BASIC COMMANDS :
Thasa eoaaanda eonaiat of mxtmndad. graphic
and I/O davica Chaaaals and up to 3 acroHiag window:
scraan In proportional spaced eharaetars. 142 to ovaj
GRAPHIc'"cOM«ANDS:
- PRINT »4: DRAW width,hairth, pattern (This
box fill or clear eomajind that atarta at the last plot eoaaand
that fills in tha aeleetad pattern (0 to 9 <or 10- user defined
pattern that eenalata of 8 bytaa atartiag at addreaa 23S40)
- PRINT #4: CIRCLE x,y, patters (Thia is a region filling
eoaaand that fllla froa right to left, aelaeted blaaJc areas of
the screen ta the patterns described above. It will fill a line
until it fiada a set pixel) x,y seta the starting poa.
- PRINT »*'. INK X tiaaediatly changes ink color on screen)
- PRINT *4: PAPER x (iaaediatly changes paper color en screen)
- PRINT »*: POKE a,b (this does a double poke for 16 bit
auabers . b Can be 0 to 6S53S
CHANNEL AND HINDOH COMMANDS :
- PRINT #4: OPEN »n , 'device* This attaches a chann.l to a
display device, (n can be channel 2 to 15 ) device can ba "wO*,
(window 0 to 2) or *lp" (larg e printer 'aerco type
IF'
This
- PRINT #4: CLOSE »n (n can be 2 to 15 .
used for cloaeiag channels opened with the above <
never use the Slnclar Close eoaaand (unprecaeded by Lkdoa
switch) to elose a chaaaal epeaed by Ucdos)
- PRINT »4: INPUT* (window) , top, left poa, right poa.bottoa poa
This eoaaaad daflaas a vladows size, positioa aad color.
-wiadow' is 0-2 , ether paraaeters are standard print positions
io afaaoiute auabers (0 to 20or3l) EG: PRINT»4 : INP0T#1 ,0 , 10 ,20 ,3
This would define window #1 to have its upper left corner at
print pos 0,10 aad the window would be 10 units wide (20-10)
The bottoa of the window would be at the 8th line,
the screen colors that are being uaad when the wiadow is defined
will atay with that window.
- PRINT #4: CLEAR w This will clear the viadow (0-2) aad
restore the priat poa to tha tep of the wiadew . It will also
racaler the wiadow.
Prof I 1 e of the Author
Mr. George Chambers Is one of them "rotating
officials", always Involved In the Toronto TSUG, and
now the club Secretary. George contributes a
regular column In "Sync Link" about the Larken Disk
system and other subjects. If it can be done with
Larken, George knows how to do It. We look forward
to other articles and programs by George.
Articles and Reviews
January 1988
TIME OtIGER TS~2(D6a SffkFE PISHC SYSTEM
A Review By:
Mr, John Ollger has now finished "phase 4" of
the JLO SAFE DISK Operating System, which I have
dubbed "SDOS", This review will attempt to give an
overview of this versatile hardware and DOS. I
believe that even the users of SAFE may glean some
new Information. First, the hardware Is designed to
the "SHUGHERT STANDARD" which means that It conforms
to an existing standard for FORMAT and CONTROL of
Double Density Soft Sector Disk Drives. Several
types of drives are usable with this system
Including; 5 1/4 Inch Half or Full height. Single or
Double' Side format; 3" Disk Drives by Amdek, and
some newer 3 1/2" disk drives. The key as to
compatabi I Ity Is whether the drive Is "SHUGHERT
STANDARD".
The Ollger SAFE hardware consists of two
circuit boards that fit up-right In the Ollger
Expansion port. This expansion port has four slots
and a extruding edge card connector to accommodate
other add-on devices. It also contains a "RGB
INTERFACE" to connect to a RGB Monitor, "BOARD A"
of the system contains the heart of the disk
interface, the Western Digital Controller chip
WS-1770, and its Interface circuitry. "BOARD B" of
the system contains 16K of extra memory. 8K Is a
EPROM that contains the assembly code of the
operating system, some new BASIC Language functions,
and a Centronics Printer Driver Software, The other
8K Is RAM that Is used for Instruction processing of
the new Basic Language and the Disk Control Basic
Commands.
One should think of the Ollger Safe Disk System
as the centerpiece of a larger system that Includes
the Printer Interface, the D I sk Control I er. Extra
Memory, Additions to the TS-2068 ROM, RGB Monitor
Interface, and a "Control System" that Includes
control of . the printer. Extra Memory, and the Disk
Drive. The Extra Memory Board has not yet been
released. "SDOS", the controlling software has been
a on-going development since the SAFE DISK hardware
was released during the winter months of 1986. Each
stage of development was made available to the users
In a Up-Dated EPROM. The latest EPROM carries the
Identlcatlon of "V2-40", For the user to up-date
his system Involves only the replacement of ihe
EPROM that Is In use.
As of now, the 8K EPROM Is almost completely
filled with assembled code, and un less Mr. 01 1 ger
decides to piggy back another EPROM, It appears that
Bill Jones
SDOS Is In a finished state. A table of the SDOS
Language Syntax Is listed below. Note the
simlllarlty to the regular TS-2068 Cassette
Instructions for easy learning. Also note the
brevity of the command syntax (fewer key strokes).
Al I of those commands can be performed by Keyboard
entry or from within program lines. Disk file
"titles" can be concantated as, LET A$="Tltle", and
then use A$ as a title within the disk command. Or,
<LET A$=A$+STR$ 5> and the program title to SAVE or
LOAD would be "TItleS",
THE SDOS COMMAND SYNTAX
FORI'IAT/"name" A diskette Is formatted to
established parameters with title of "name".
CAT Loads the disk directory to screen. CAT
can be used with a Input statement to place a prompt
on screen to Input a title to LOAD.
MOVE/ Copies a diskette from current drive to
the next drive In the system.
MOVE/"tltle" and type TO n Moves a file named
"title" to disk n. The type of file Is VAL,
SCREENS, DATA, ABS, or If left out, a BASIC file Is
assumed.
SAVE/0 Saves a auto loading menu program.
Then LOAD ENTER will load the file 0 program.
' LOAD ENTER Loads a file 0 auto running menu
program.
SAYE/"name" Saves a BASIC program to disk.
SAVE/"name"LINE n Saves a BASIC program which,
when re-loaded will auto run at line n.
LOAD/"name" Loads a BASIC program named
"name". The programjauto runs If It was saved with a
starting I Ine number.
SAVE/"name"CODE ,adr,byts Saves a machine code
table from memory address and byte length specified.
LOAD/"name"CODE adr Loads a code program from
disk to starting memory address specified.
SAVE/"name"VAL Saves the TS-2068 Variable file
to disk.
LOAD/"name"VAL Loads a Variable file from disit
to memory.
SAYE/"name"SCREEN$ Saves the existing monitor
screen to d Isk,
LOAD/"name"SCREEN$ Loads a screen from disk
and replaces the existing monitor screen.
SAVE/"name"DATA x() Saves a dimensioned
Numeric array to disk.
LOAD/"name"DATA xO Loads a dimensioned
Numeric array fromdisk.
SAVE/"name"DATA x$() Saves a dimensioned
12
Character array to disk,
LOAD/"name"DATA xS ( ) Loads a dimensioned
character array from disk and assigns the data to
"x$".
SAVE/"name"ABS Saves the entire state of the
computer as a BASIC program, including all vars and
at I code.
LOAD/"name"ABS" Loads the above State of the
Computer BASIC program,
COPY/ Copies the screen to printer.
MERGE/"name" Merges a BASIC program and
appends it to the existing BASIC program in memory.
Variables of the MERGED program take priority.
All of the above SAVE commands will check for a
identical named program in disk and TOOT a warning
if one exists, then pause 5 seconds to allow an
abort,
SAVE//"name" This variation by-passes the same
name check and SAVES the program whether a same name
exists or not,
RESTORE/"old name" type TO "new name" Changes
the name of a program in disk.
RESTORE/s Re-initial Izes the SDOS system to
TURN ON parameters,
VERIFY/"name type" Checks file in disk and
verifies accuracy of the file data,
DISK DRIVE CONFIGURING COMMANDS
LET/s=1 or2 Sets up to FORMAT a diskette for
either single or double side read-write.
LET/d=0-3 Changes active disk to disk number
spec! f led ,
LET/t=10-250 Sets up to FORMAT a diskette to
the number of tracks specified. Range Is 10 to 250,
default value is 40.
LET/h=0-5 Resets disk head step rate to
accommodate a slower drive. Default value Is 0=6ms.
l=12ms, 2=20ms. 3= 30ms.
LET/p=o Selects the printer driver code
software that is stashed in the EPROM to print with
a Centronics printer,
LET/p=t Deselects the Centronics printer and
selects the TS-2040 printer.
The NMI PUSH BUTTON FUNCTIONS
ABS STATE SAVE via numbered keys. The title of
the SAVE will be the number pressed,
SCREENS SAVE via keys Q through T on same row
of keyboard. The title will be the key pressed,
COPY SCREEN to Centronics Printer via press of
key Z.
BREAK to BASIC via press of key C.
. RETURN TO INTERRUPTED PROGRAM via the ENTER
key.
Holding the key "N" (for NEW) while pressing
NMI button causes a system RESET to copyright
d Isp lay.
Holding keys 1 through 3 upon power-up selects
the Disk Drive number to be active (instead of Drive
number 0),
JLO SAFE puts more data Into a diskette than
does most other disk control systems, 405K as versus
360K for a IBM system for example, A 80 track drive
formats for 815K maximum. In addition SDOS is
likely the fastest disk system in exi stance for data
SAVE and LOAD to and from Disk, faster even than the
IBM XT, Which brings up a point to discuss. Often
the question arises; "Does It have Sequential File
SAVE and Append?". The answer to that is, "No, such
a group of functions are not needed, and would not
be used If provided with this fast disk system".
Opening and Appending a existing file in disk
is a function created to mitigate the deficiencies
of some computers. For example, the C-128 and some
other computers limit string and character array
content to 255 characters, too I Itt le to contai n
paragraphs of textual data. The only way to SAVE
textual data to disk with such computers Is to use
counters to save the data In small "line length"
groups to disk, and keep on OPENing the disk files
to APPEND the text files as additional data is being
generated. Each OPEN and APPEND action takes tens
of seconds of time. With SDOS, we SAVE a Character
array of data as large as 25K in three seconds flat-.
If we want to APPEND It, we bring it back into
memory (three seconds) and append it at will
A review can never do justice In such limited
space to a comprehensive system such as the SAFE
DISK Controller and SDOS. The literature supplied
with the system Is about 80 pages of type. How can
that be boiled down to a couple of review pages? It
can't, so one should realize that this review is
just a "overview" of the system. The manual
supplied is written for the kit builder and it goes
Into much more detail than one normally would expect
of a user manual, giving theory of operation,
testing Instructions, and operating instructions.
The manual Is an outstanding reference for both the
builder and the the user who buys the system
assembled and ready to use.
COMPATABILITY WITH OTHER TS-2068 HARDWARE -
SOFTWARE: Since the Safe Disk system is fully
decoded and does not use the TS-2068 RAM. there is
Articles and Reviews
January 1988
no hardware or software that this system
conflicts with. Safe Disk operates with TS-2068,
TS-2068 with Spectrum Switch, either in the TS-2068
or the Spectrum Mode, and with the Zebra OS-64
Cartridge. No software conflicts exist.
OLIGER SAFE USED WITH THE LARKEN SKDOS
CARTF^IDGE: Board A of the SAFE system is the disk
controller. When Board B is removed, and the Larken
SKDOS Cartridge is installed, the system becomes a
LARKEN DOS. Then the diskettes are formatted to
Larken format and diskettes recorded with Larken
disk systems can be loaded and operated. See the
review of the Larken Disk system in this Issue.
OLIGER SAFE USED WITH THE SOFTWARE "SPDOS".
This software on disk is supplied by Cuyahoga
Valley Software Works, 615 School Ave,, Cuyahoga
Falls, OH 44221. ($24.95 +$ 1 .50 postage) . The
SPDOS Disk provides the RAMEX DISK OPERATING SYSTEM
"in addition to the Ollger SDOS system". The two
disk operating systems are combined to have almost
all conceivable disk command functions. Moreover,
when the SPDOS software Is loaded, diskettes
prepared by a RAMEX DISK system will load and
operate. The SPDOS Disk is highly recommended for
all Oliger Safe users.
FOR THOSE WHO WANT EVERYTHING, the Oliger Safe
system, with Larken SKDOS Cartridge, and with the
SPDOS Disk Software, gives the user three disk
operating systems and the capability to use software
formatted with Oliger Safe, Larken Disk, and RAMEX
Disk.
HARDWARE OPTIONS AND PRICING: The manual Is
written for those who build the two circuit board
projects. This is a very educational project and
one can save a considerable amount of money by
assembling the two boards. Also, one may purchase
both boards fully assembled and ready to use. The
building project manual Is a very detailed source of
reference even for the non-builder. THE PRICING
OPTIONS: Bare Circuit Boards with the SAFE
EPR0M=S45.95. Kit of both circuit boards with ail
parts=$97,95. Complete system Fully assembled and
ready to use=$ 119.95 ($129.95 with the NMI Option).
The Four Slot Expansion Buss: Bare board=S 1 1 .95,
Board with parts=$43.95. Fully assembied=i54,95.
If you are ever going to build a electronics
project, then a Oliger Kit is what you should start
with. His instructions are clear and easy to
understand. The only equipment needed to build
these projects is a small soldering pencil. However
it will help to have a desk magnifying glass to
better see the tiny circuit traces, and an ounce of
Acetone with a soft toothbrush are needed to clean
off the solder flux as the job progresses. The
building time for both boards will be about 5-10
hours, Mr, Oliger wont let you fall. For a nominal
charge of $10.00 you can send him a completed board
for check out and repair. So, if it doesn't work
after you build It, that is your insurance.
SOURCE: The Oliger Company, 11601 Whidbey
Drive, Cumberland, IN 46229. Send SASE for product
I ist.
TS-2068 SUPPORTING PUBLICATIONS
Changes at Syncware News: Tom Woods departs
the scene, and Jeff Moore steps up from Editor to
Publisher. Basil Wentworth, well known to most of
us "timers" becomes Editor of Syncware News. Fred
Nachbaur, the original founder and publisher,
continues as Technical Advisor. Sounds like an
enduring combo to me. Of Interest Is that Syncware
News Is beginning to support the IBM Clone Users, a
move that should enhance their subscriber base and
advertising potential, Up-Date recommends that all
TS-2068 users continue their subscriptions to
Syncware News and encourage their efforts. Syncware
News, 602 S. Mill St., Louisville, OH 44641.
Subscriptions, $16.95 U.S. $19.95 Canada and
Mexico. (1 year 6 issues).
TIME DESIGNS and CTM MAGAZINE continues to be
leader publications In support of Tlmex Sinclair
Computers, Both are excellent publications, highly
recommended by UP-DATE. Time Designs, 29722 Hult
Road, Colton, OR 97017. Subscription $15.00 per
year, six Issues. CTM Magazine, 1704 Sam Drive,
Birmingham, AL 35235. Subscription $18.00 per year
(U.S) $32.00 per year (Canada, Mexico), 12 issues,
COMPUTER SHOPPER, a huge magazine, having a
regular article series about Tlmex Sinclair, and a
mammoth source of computer products advertisements.
Computer Shopper, 5211 S. Washington Ave, PO Box F,
TItusville, FL 32780. Subscription $21.00 per year
(12 Issues), U.S. Subscriptions only.
The Aerco FD~68 Disk System
A Review by: Syd Wyncoop
The FD-68 Is a disk system that has
subscribed to the 'Theory of Evolution'. That Is
to say that the FD-68 Is not a finished system and
undergoes constant revision. However, Aerco has
taken care to make sure that each update remains
compatl bl e with previous versions.
Some features of the FD-68 that I like are:
** Accepts any mixture of 4 disk drives In 3", 3
1/2", 5 1/4", or 8" sizes, which can be SSSD,
SSDD, DSDD, or DSQD. ** Additional 64K of RAM
memory addressed In the dock bank which Is
expandable to 256K, *** Bullt-ln RGB interface,
** Entire system is contained on one board of
very good quality. The board Is uncased but has a
backing on the solder side, *** The Operating
system Is In a ROM and uses none of the 'normal'
system RAM, Uses standard Sinclair Keyword
commands, *** Uses standard disk file names and
extensions, ** Does not use a channel number, so
there are no conflicts with other device drivers,
**** Runs all CP/M 2.2 programs, ** Can be
purchased as a complete system or you can
economize by puting together your own system.
While the unfinished system has many unique
enhancements, the process of evolution has created
a few drawbacks. I feel that the biggest
drawbacks are: ** The entire Basic variables area
must be saved, as Individual arrays cannot be
saved, ** The system is not compatl bl e w 1 th
Spectrum programs, ** There Is limited directory
space. The array probi em can be worked around
rather easily, however, the Spectrum compatibility
has been longed for by the users. The FD-68 will
only recognize 32 program titles, at this time, I
understand the directory space has been Increased
however, I have not received my latest EPROM
up-date.
The real problem with the deficiencies Is the
long delay between updates (Spectrum capatablllty
was to be completed two weeks after the 5/87
Sinclair Mini-fest), The updates are sent from
Aerco in a new ROM. There is a small fee ($5,00
for the last update I received) for this and the
old ROM Is returned to Aerco to be recycled for
the next update. Also, your ROM can be
reprograrraned at any time. If you make changes In
your system configuration. The Basic FD-68 system
allows saving of Basic programs, binary memory
images (code), the entire variables area (with or
without a Basic program) and SCREENS' s. There Is
also the capability of running an AROS program,
from disk, in the dock bank! Provision has been
made for the future addition of numeric arrays
(.DAT), character arrays (.CHR) and LROS program
(.LRO) extensions.
There Is a special extension (.BUT) that
allows entry Into a very nice Implementation of
CP/M, called RP/M. CP/M provides an entirely new,
to Sinclair users, operating system. There Is a
wide range of public domain and commercial
applications packages available to us under CP/M.
More on this in future issues. If there is a
request for It. Each disk can store one autostart
program by naming It 'Boot.bas' which runs upon
turning on the computer, with the disk In drive A.
I usually place a program such as M-Scrlpt or Zeus
on a disk as the boot program, I then use the
rest of that disk for f I les that the Boot program
uses. All of my general purpose disks have a
special Boot program I wrote that sets -up the
system variables to my taste, catalogs the disk
and loads the files I Indicate, This has proven to
be a very efficient procedure,
I cannot say enough good things about the
FD-68, I looked at the Ollger and Zebra systems
when I was shopping for a disk system and I chose
the Aerco for the above reasons, I feel that It
provides the widest range of options (Though I
must admit that I do like the Zebra tree
structure). It Is a good value and a must have.
I since looked at the Larken system. Larken has
some unique features but, I am not convinced to
change. In short, the Aerco FD-68 provides many
unique features.
Source: AERCO, PO-Box 18093, Austin, TX
78760. Send SASE for literature and prices.
Author Prof I I e
Mr, Syd Wyncoop works with the J. 1. Case Co.
of Portland, Oregon, manufacturing Farm and
Construction Equipment (How unique! An American
Manufacturer!). A Boy Scout leader, and member of
the Executive Committee of St. Therese School, Syd
Is Involved but finds time to teach Machine Code
to the Portland SIG group and hold off Ice as
Chairman of CCATS, one of the most active Timex
User Groups. Syd bought his first computer, a
TS-1000, to acquaint his two boys with computers.
Then he had to teach himself in order to be the
teacher. Now he is the Guru of the Portland area
user groups. We UP-DATE' rs encourage Syd to
continue covering the Aerco FD-68 and CP/M, as
well as sharing his programs and Utilities,
SALUTE!
TIXEX TECHNICAL DATA
Timx TECHSICAL DATA
+5V
f CS6
eOMPOHENT SIDE jO p O _^
^ *1 ^ \ \ \ \ ^1 *1 ^1 "1 *i \ \ '^1 "1 °i
TS tooo couTAnau tmimo k oiFreneNT)
S itopfe ' 120pf1- w expansion
DO NOT SCALE DRAWING
OMN N PARSONS
T-3
OAII FEB 84
TIMEX
23.
W0MX3
13S3U
IIVH
Bt)«01
r/jra' TECHNICAL DATA
r-4
IHI— RES FLPXir J iriE I
DISCOVER ft tME:M r> I MEINJS I OIMflDDRESS:
:20<£>0 COMF^LJ-r I IMC5 !
Just look at all o-f the "d1 ot-a-bit i ti es" i
1520 is both a hi-res plotter AND a printer.
1520 is compact-slightly larger than a 2040.
High quality ALPS made platter (nechanism.
4 color plotting; black, blue, green, & red.
4 character sizes: 10, 20, 40, and 80 c.p.l.
16 selectable dashed line sizes.
90 degree character rotation possible.
479 "x" step / +-998 "y" step plotting area.
Extra paper & pens avail, at RADIO SHACK.
Quality PC board with plate-through holes,
"LPRINT" commands control plotter functions.
Expanding variety a-f software -for the I/F.
1520 available 8 TOYS-R-US stores for «29.95.
Write -for more in-fomation and sample plot.
QUflHIlTY
DESCRIPTION
PRICE EACH
TOTflL
iirt Board i/cissette
Ml. 75 ppd
Coiplfte Kit »/ci5sette
IZ0.95 ppd
Asseiiilid/tcsted n/cass.
I30.95 ppd
Keyed Edqe Connector-If
purctijsfd Kith hirdnare
$4.75 ppd
SCREEN-IO-PLDTTER util.
t8.92 ppd
PIC-PLOT utility
$8.95 ppd
BAWOIFIC utility
»8.?5 ppd
1 srt/order
ens/ 1320 patch kit
COLORED REPLACEMENT PENS
18.95 ppd
t2.00 ppd
TOTAL ENCLOSED))
ccun Ai 1 nancBC rn.
John Hcmchael, 1710 Palier Or., Larui«, UY 82070
HHER& BQUER5 PROUDLY PRESEhTSH
r
Based on a Popular TU Game fkm
STARRING LOUELY HI55 BRNNfl BRITE
The Ultimate Uord Game.
The all new MONE'y MACHINE IX
r-1 e uj theme!!
Fantastic Family Fun!!
••BtHNNR" turning the Letters
Hundreds of NEU PuzzLes-
Solo or 2 or 3 P L a y e r s
H L L t. h i ^ for only
T/S 2068 jfc.i j-s.-S
Cassette IplCiUU (US)
I ri I. u d e s Po £ t a g e - V i a 1st Class
HERB BOUER5, Sr -
25SS Uoodshire Circle
Chesapeake, Ufl 23323
Phone: S04. 4.S7-5924-
SSOFTE ________
H-;3'f;'H i ficcufdtt: fiDsiness, umtmrn and ficcounting y'tumt
Don't Fi is Yuyr 196?
LJ M"T" X L_
ouiK-idio ,
INCLUDES: Form 1040: 104.0fl i: EZ ,
5ch, P., B & P * Forms 2106,: 2441
Hutomatic CaLcLflation .incom£_iax
Liability, Chi Id Care Credit
able Social Security: Earned in-
come Credit ^Multiple i-i-2 & 1099
Fntru » 2040 Compatible ^ More
tiPi muil irmiftf to all Official IntfernBl gKUfeno^ r^m ±
Only 429 ^ 50
iafi. Si D€lii!i;rM
Janyary 5, ISSS ^mu ?iLL rtcdMs a^=g^ ^if chsrae "THE ofm
Tfis Lhm an.i viiii", jhi: pr-M=aM ha: han rtnits in TIHE ntjisiis,
sr==j i: kiny iis^.i all mt\ the iinite.j 5tBte3= IsHEDIhTE jHiPMEni
O F? if !?■■!] haut alrta.i!4 purchastd "THE Ofm thx lhI" fr-is
^mu Mau deduct i7,m frns the piirchase price shich ¥ill aiue m^u
5 fUU Cr^jjt f^j th r nf iqiliSi. !>i|rC hti^^>
G i_J « w r-4"T" ^ ^ : If qoy -ujt dsm Sfi'i fine
r penaltu as a SigECT KSET cf iisifK! "l|»IK-iB40". I *ill psm
UP-DATE ISSUE DISKETTES
The software and utilities presented In each Issue of UP-DATE are consolodated and offered on
disk. These are all NEW programs having a combined value of at least $50.00. The authors of the
titles share In the sales proceeds of the Issue Diskette. As you add these useful programs to your
library you are supporting your Up-Date magazine and the authors who bring you these useful
programs.
Disk System Support: By the time you read this UP-DATE should have support capability for
LARKEN, AERCO FD-68, RAMEX, and 0LI6ER SAFE, disk systems. Disk Drive support Includes; 3" Amdlsk,
5 1/4" DS/DD 40 or 80 track, and 5 1/4" SS/DD 40 track. Due to high cost and scarcity, orders for
3" Affldlsk programs must be accompanied by a 3" diskette for dubbing.
JANUARY 88 DISKETTE
OCTOBER 87 DISKETTE
The January disk contains: MTERM
DATA CAPTURE, by George Chambers:
DOSOEX File Indexer, by Bob Hart ung:
PURITY, by Up-DATE: LIST LOOKER, by
Up-DQte: EXTRA MEMORY UTILITIES, by
Up-Date. PRICE: $19.00 postpaid.
The October 87 disk contains: MAIL
MERGE, by Up-Oate: J-lfTILITIES, by
Up-DATE: A Menagerl e of 20 Sound and
Visual utilities: A Group of
Programming Tips. Mall Merge Is a major
software. PRICE $16.00 postpaid.
Special offer: Get both
through UP-DATE, address on cover.
January and October Issue Diskettes for $32.00 postpaid.
Order
» *
Smart Text Disk
The Smart Text programs are being
prepalred In LARKEN, AERCO FD-68, and
RAMEX, disk formats. Disk drive formats
are: 3" Amdlsk, 5 1/4" DS/DD 40 or 80
Track, or 5 1/4" SS/DD 40 Track. Due fo
the o(»t and scarcity of 3" diskettes,
orders for 3" disk must be accompanied
by two 3" diskettes for dubbing. Each
diskette has an additional software for
use with the Zebra OS-64 cartridge for
64 column display. Standard price for
ail Is $26.00 (postpaid US and Canada).
Order through UP-DATE. Satisfaction
Guaranteed.
Smart Text Cassette
The Cassette version of Smart Text
has many of the airtomatic data
processing and printing functions of the
disk drive software, and it includes the
program for use with the Zebra OS-64
Cartridge. This software Is available
only for use with Aer<x> or Ollger
Centron I cs Para Mel I nterf ace. As
progranmed, ST works with EPSON
compatable printers. Program line
changes are required for others. 80
page manual includes Instructions. The
TS-2040 printer Is also supported.
Price $26.00 (Pbstpaid). Order through
» IF-DATE. Satisfaction Guaranteed. »
Continued from preceeding page.
vs«r=VoUage standing vave ratio
vtYm=Vacuuin tube volt neter
VU=Voluiiie unit
wb=yide band
wdg=Winding
tfhdiii=lilatt hour aeter
w!n=Uatt[iieter
wv=yorking voltage
)(=Reactance
'i(l=InductiYe Reactance
2a=Zero adjusted, \
vt*Vacuua tube
VQX=Voice operated Iransnitter keyer
w=Uide
«d=yatt denand aeler
wg=yaveguide! vire gage
«I=yavelenglh
«rg=liliring
tfv=yire wound
Xc=CapacitiYe reactance
y=Adi»ittance
Z=Ii8pedance; Zone
SEMICONDUCTOR
The following abbreviations h;
semiconductor devices.
a— Alpha. Cpmmon-base short-circuit
current gain
B, b— Base electrode for units employing
a single base
bi, b2. etc.— Base electrodes for more
than one base
B — Beta. Common-emitter short-circuit
current gain
BVr— Breakdown voltage, reverse
C, c— Collector electrode
Ceb— Interterminal capacitance, collec-
tor-to-base
C„— -Interterminal capacitance, collec-
tor-to-emitter
d, — Drain-source capacitance, with
gate connected to the guard terminal of
a three-terminal bridge
CiM, — Open-circuit drain-source capaci-
tance
Cju — Drain-substrate capacitance, with
gate and source connected to the guard
terminal of a three-terminal bridge
C.b — Interterminal capacitance, emit-
ter-to-base
C,do— Open-circuit gate-drain capaci-
tance
Cnp— Open-circuit gate-source capaci-
tance
C„„— Open-circuit input capacitance
(common base)
Cjb,— Short-circuit input capacitance
(common base)
Cieo — Open-circuit input capacitance
(common emitter)
Ci„— Short-circuit input capacitance
(common emitter)
C. — Gate-source capacitance, with
drain short-circuited to source
C,^— Open-circuit output capacitance
(common base)
Cb.— Short-circuit output capacitance
(common base)
Co<u— Short-circuit output capacitance
(gate-drain short-circuited to ac)
ABBREVIATIONS
ave been adopted for use with
— Open-circuit output capacitance
(common emitter)
Co*.— Short-circuit output capacitance
(common emitter)
Co.,— Drain-source capacitance, with
gate short-circuited to source
Crb.— Short-circuit reverse transfer ca-
pacitance (common base)
Cr«— Short-circuit reverse transfer ca-
pacitance (common collector)
Ct«— Short-circuit reverse transfer ca-
pacitance (common emitter)
Drain-gate capacitance, with the
source connected to the guard terminal
of a three-terminal bridge
D — Duty cycle
d — Damping coefficient
E, e — Emitter electrode
fhn,— Small-signal, short-circuit,
forward-current, transfer-ratio cutoff
frequency (common base)
fh,c— Small-signal, short-circuit,
forward-current, transfer-ratio cutoff
frequency (common collector)
fh,.— Small-signal, short-circuit,
forward-current, transfer-ratio cutoff
frequency (common emitter)
fmAi— Maximum frequency of oscillation
— ^Transition frequency
— Static transconductance (common
base)
Small-signal transconductance
(common base)
gy^Q Static transconducUnce (common
collector)
g„c— Small-signal transconductance
(common collector)
gjjg Static transconducUnce (common
emitter)
g„,— Small-signal transconductance
(common emitter)
Ge — Germanium
GpB— -Large-signal average power gain
(common base)
Gpb— Small-signal average power gain
(common base)
Gpc— Large-signal average power gain
(common collector)
Gpc— Small-signal average power gain
(common collector)
(JpE— Large-signal average power gain
(common emitter)
Gp,— Small-signal average power gain
(common emitter)
Gpr— Small-signal insertion power gain,
common gate
Gp,— Small-signal insertion power gain,
common source
Gtb — Large-signal transducer power
gain (common base)
Gu, — Small-signal transducer power gain
(common base)
Gtc — Large-signal transducer power
gain (common collector)
Gu— Small-signal transducer power gain
(common collector)
Gte— Large-signal transducer power
gain (common emitter)
Gu — Small-signal transducer power gain
(common emitter)
G„— Small-signal transducer power
gain, common gate
G„ — Small-signal transducer power
gain, common source
hrs— SUtic value of the forward-current
transfer ratio (common base)
hfb— Small-signal, short-circuit,
forward-current transfer ratio (com-
mon base)
Hpc— Static value of the forward-current
transfer ratio (common collector)
hfc— Small-signal, short-circuit,
forward-current transfer ratio (com-
mon collector)
hj-E — Static value of the forward-current
transfer ratio (common emitter)
hf,— Small-signal, short-circuit,
forward-current transfer ratio (com-
mon emitter)
hrEL— Inherent large-signal, forward-
current transfer ratio
hiB — Static value of the input resistance
(common base)
Continued on next page.
Z-3
Continued froi preceeding page
hib — Small-signal value of short-circuit
input impedance (common base)
hic — Static value of the input resistance
(common collector)
hit — Small-signal value of short-circuit
input impedance (common collector)
h,g— -Static value of the input resistance
(common emitter)
h,.— Small-signal value of short-circuit
input impedance (common emitter)
h,, (real)— Real part of small-signal
value of short-circuit input impedance
(common emitter)
hoB — Static value of open-circuit output
conductance (common base)
— Small-signal value of open-circuit
output admittance (common base)
hoc — Static value of open-circuit output
conductance (common collector)
— Small-signal value of open-circuit
output admittance (common collector)
hoE— Static value of open-circuit output
conductance (common emitter)
h«,— Small-signal value of open-circuit
output admittance (common emitter)
hrt— Small-signal value of open-circuit,
reverse-voltage transfer ratio (com-
mon base)
h„ — Small-signal value of open-circ\iit,
reverse-voltage transfer ratio (com-
mon collector)
h„— Small-signal value of open-circuit,
reverse-voltage transfer ratio (com-
mon emitter)
I, i— Intrinsic region of a device (where
neither holes nor electrons predomi-
nate)
Ig — Base current (dc)
lb — Base current (rms)
ia— Base current (instantaneous)
Ibo— Breakover current, direct
Ic — Collector current (dc)
Ic— Collector current (rms)
i<; — Collector current (instantaneous)
1^30 — Current cutoff current (dc), emit-
ter open
I^j.Q — Collector cutoff current (dc), base
open
I^j.R_Collector cutoff current (dc), with
specified resistance between base and
emitter.
1^-5.3 — Collector cutoff current (dc), with
base short-circuited to emitter
— Collector cutoff current with spec-
ified voltage between base and emitter
Collector current (dc), with speci-
fied circuit between base and emitter
l^Q__Collector leakage current (cutoff
current).
Id — Drain current (dc)
I(,(^ff,_Drain cutoff current
logR^Drain current, (external) gate-
source resistance specified
Iogg_Drain current, zero gate voltage
Iog3(_Drain current, gate-source condi-
tion specified
Ie — Emitter current (dc)
U — Emitter current (rms)
Ie— Emitter current (instantaneous)
Iebo — Emitter cutoff current (dc), col-
lector open
lEC(of.) — Emitter-collector offset cxirrent
lgcg_Emitter cutoff current (dc), base
short-circuited to collector
lg,j.j_Emitter cutoff current (double-
emitter transistors)
If — Forward current (dc)
I, — Forward current, alternating compo-
nent
i^, — Forward current (instantaneous)
I —Forward current, dc value with
alternating component
— Forward gate current (direct)
IpQ^—Peak forward gate current
Ip^_Forward current, peak total value
I f.,ov)— Forward current, overload
Ip.(j„_Forward current, peak repetitive
Ipg„_Forward current, peak surge
Ic — Gate current, dc
IcF — Forward gate current
IcR— Reverse gate current
Ih— Holding current, direct
Ii— Infection-point current
Iq — Average output rectified current
I^y—Overload on-sUte current
Ip — Peak-point current (double-base
transistor)
I„ — Reverse current (dc)
Ir— Alternating component of reverse
current (rms value)
Ir— Reverse current (instantaneous)
iwREo— Reverse recovery current
Irrm— Peak reverse current, repetitive
Ircrms)— Reverse current, total rms
value
Ig — Source current
Igjjg—Source current, zero gate voltage
Igj33f_Source current, gate-drain condi-
tion specified
Peak on-state current, repetitive
I„„_On-state current surge (nonrepet-
itive)
lu — Substate current
Iv — Valley-point current (double-base
transistor)
Iz — Regulator current, reference cur-
rent (dc)
— ^Regulator current, reference cur-
rent (dc near breakdown knee)
l2j,_Regulator current, reference cur-
rent (dc maximum rated current)
Ko— Thermal derating factor
Le — Conversion loss
M — Figure of merit
N, n— Region of a device where electrons
are the majority carriers
NF— Noise figure
NF^— Overall noise figure
NRo — Output noise ratio
P, p — Region of a device where holes are
the majority carriers
Pbe — ^ToUl power input (dc or average)
to the base electrode vnth respect to
the emitter electrode
Pbe — Total power input (instantaneous)
to the base electrode with respect to
the emitter electrode
p^,g__Total power input (dc or averge) to
the collector electrode with respect to
the base electrode
PcB — ^Total power input (instantaneous)
to the collector electrode with respect
to the base electrode
PcE — ^Total power input (dc or average)
to the collector electrode with respect
to the emitter electrode
p^jg — Total power input (instantaneous)
to the collector electrode with respect
to the emitter electrode
Ppg — Drain-source power dissipation
PgB — ^Total power input (dc or average)
to the enutter electrode with respect to
the base electrode
pgg—Total power input (instantaneous)
to the emitter electrode with respect to
the base electrode
Pj — Forward power loss (dc)
Pi — Forward power loss (instantaneous)
Pj.„ — Forward power loss, total peak
value
PiB — ^Large-signal input power (common
base)
Pib— Small-signal input power (common
base)
Pic— Large-signal input power (common
collector)
P,c — Small-signal input power (common
collector)
Pjj; — Large-signal input power (common
emitter)
Pu — Small-signal input power (common
emitter)
Po3-_Large-8ignal output power (com-
mon base)
P„b— Small-signal output power (com-
mon base)
— Large-signal output power (com-
mon collector)
Poc — Small-signal output power (com-
mon collector)
pQg — Large-signal output power (com-
mon emitter)
Po,— Small-signal output power (com-
mon emitter)
Pr — ^Reverse power loss
Pr — Reverse power loss (instantaneous)
PsM— Surge nonrepetitive power
p,j — ^Total power input (dc or average) to
all electrodes
Pi — ^Total power input (instantaneous) to
all electrodes
Q,— Recovered charge (stored charge)
Rb— External base resistance
rRB— Resistance between two bases,
emitter zero (double-base transistor)
r^'Ce — Collector-base time constant
Continued on next page.
Z-4
Tel ecomputi n
MTERM II
Modifications for the LARKEN DD System
by G. Chambers
14 Ri chore Court
Scarborough. Ont MIK 2Y1 CANADA
When I started to put MTERM II onto the LARKEN
system I had some ideas of what I wanted to do.
Primarily I wanted to be able to make disk saves of
the buffer at any time while on-line. I soon found
that as MTERM was constituted, this was impractical.
MTERM as presently constituted cleared out any BASIC
program and variables that were initial- ly present.
Thus my idea of having a BASIC program ready to
perform the disk-save immediately upon an exit from
MTERM was not possible. I have overcome this by a few
judicious POKES into MTERM, plus some unique Ideas in
a companion BASIC program. The following notes
describe the changes and their purpose.
I found that one of the first things that MTERM
does upon initialisation is to look at the system
variables VARS and PROG. It uses these values to clear
out the BASIC program and variables, also to help in
determining the ongoing buffer status.
Bytes which do this are located at 54035/37,
54043/45, and 61165/66. I modified the program by
POKEing new values Into several MTERM addresses, as
follows.
54034,33: 54035,12: 54036,123
54043,33: 54044,12: 54045,123
54523 to 54537, POKE all zero's in these addresses.
The first six POKEs cause MTERM to set the start of
the buffer space. This figure could be set anywhere;
it Is simply a trade-off between buffer size and BASIC
program size. Initially, I considered having MTERM
look at the system variable E-LINE, however I found
that this became corrupted whenever I entered a direct
command. I fastened on an arbitrary value of 31500
since I felt that with a disk-save routine in place,
maximizing buffer space was less important than haying
sufficient space for the BASIC program. This sizing
will allow a LARKEN-modified LOADER V to be used.
I found that with this, even though the BASIC
remained untouched, the program variables were being
wiped out. Looking around, I found a block of MTERM
code (54523/54537) that appeared to do this. I simply
wiped it out with no apparent 111 -effect.
Addresses 51164/65 store the used/free buffer
status. They are loaded with the values found in
addresses 54044/45 (i.e. the starting address of the
buffer) at initialisation, and are incremented as the
buffer fills. I have made use of this in LINE 22 of
the BASIC program to determine the size of the block
of data to be saved.
January 1988
These addresses 61164/65 can be useful in another
way. If, for example, you inadvertently erase the
buffer while in the Buffer Menu mode It is possible to
restore it. Option 4 in the menu allows you to insert
an arbitrary buffer length. This will change the
"buffer used/free" pointer in MTERM so that one can
view and/or save the buffer.
These addresses 61164/65 can be useful in another
way. If, for example, you inadvertently erase the
buffer while in the Buffer Menu mode it is possible to
restore it by POKEing address 61165 with a value
between 124 and 211. The buffer itself has not been
erased, simply the pointer, and this POKE creates an
arbitrarily-sized buffer.
There a number of features about the program which
are worthy of explanation. LINE 100 contains POKEs to
addresses 23662/63. It's purpose is this. Usually, if
you execute a RAND USR from a BASIC program and
return, the BASIC program will continue from where yoU
left it. However with MTERM this is not the case. You
wilVcome out to an OK report at the bottom of the
screen. I was unable to find the MTERM code which
caused this. Falling that, I solved the dilemma by
POKEing a number into the system variable OLDPPC
(address 23662/63) corresponding to the LINE number
where I wish to continue in the BASIC program. Then,
when I exit from MTERM it is simply necessary to press
the C key (CONT), and the ENTER key, to find myself
back into the running BASIC program at the spot where
I want to be.
The BASIC has a couple of other things about it
which are of interest. If one accesses MTERM by a RANP
USR 54016 the program is reinitalized with the buffer
set as cleared. However, if It is desired to re-enter
MTERM without disturbing the state of the buffer then
one can use RAND USR 54089. This option has been
included In the BASIC at LINES 30 and 32.
There probably will be occasions when several
successive buffer SAVES will be required during the
same download. The BASIC contains an arrangerent
whereby the name of the saved buffer remains the same
while it's suffix is incremented. Where the initial
SAVE has a suffix of "Ca", the suffix in subsequent
SAVES will be Incremented as "Cb% "Cc", etc.
Although we have shown an original BASIC program
here for use with MTERM there Is every reasdn to imbecJ
these program ideas into LOADER IV or LOADER V. They
will work there in the same way, and provide for the
additional features of these programs.
Also, even without a disk system, these features may
prove to have some merit, and are worth considering.
Telecomputing
January 1988
In adapting this program you will have to watch
carefully when you tamper with the makeup of LINES 20
21, 32, and 100, What you are trying to do Is direct
the return of the computer to the appropriate line anrf
statement number, and this can be tricky.
Note that the program Is designed to be used In the
LARKEN AUTOSTART mode. That 1s, you should save It to
disk with a GOTO 3.
0>REM Modified MTERM II for
the LARKEN disk system
by G, Chambers
2 GO TO VAL "9"
4 CLEAR VAL "31499»»: RANDOMIZ
E USR VAL "102»»
B CLEAR VAL "54015": RANDOMIZ
E USR VAL "100": OPEN #4,"dd"
7 PRINT #4: LOAD "mterm2.C1"C
ODE
9 LET g$="buffer"
10 LET g=:VAL "150": LET q=VAL
"97": LET f=VAL "20": LET o=NOT
PI: LET i=PI/PI: BORDER o: PAP
ER o: INK VAL "7": CLS : PRINT
TAB VAL "10";"MTERM II"«»"TAB
PI'i!PI;"MAIN MENU: "»♦» TAB PI+PI;
"D RUN MTERM" "TAB PI+PI; "2) L
DAD BUFFER"* » TAB PI+PI; "3) NAME
A BUFFER FILE"»»TAB PI+PI ;"4)
RESTORE BUFFER"* »TAB PI+PI;"5)
SCAN DISK FILE":: GO SUB VAL "1
3": IF LEN z$<>i OR z$<"1" OR z
$>"5" THEN RUN
12 GO TO VAL z$*f
13 INPUT "Your Choice? "; LINE
z$: RETURN
20 GO SUB g: RANDOMIZE USR VAL
"54016"
21 CLS : CLS : LET q$=CHR$ q:
PRINT AT VAL "10", NOT PI j "Save
buffer to disl<?(Y/N)"' »"File Na
me is "; FLASH PI/PI ; g$+".C"+q£
: FLASH o: PAUSE o: IF INKEY$="
n" OR INKEY$="N" THEN GO TO VA
L "24«»
22 LET n=PEEK VAL "61164"+VAL
"256"«PEEK VAL "61165"-VAL "315
00»'
23 LET qS=CHR$ q: LET q=q+PI/P
I: PRINT #4: SAVE g$+" .C"+q$COD
E VAL "31500", n
24 IF INKEY$<>"" THEN GO TO V
AL "24"
25 CLS : PRINT AT VAL "10", NOT
PI; "Press ENTER if you wish to
clear the buf f er" ' "Otherw
ise press any other key": PAUSE
o
30 IF CODE INKEY$=VAL "13" THE
N GO TO VAL "20"
32 GO SUB g: RANDOMIZE USR VAL
"54089"
40 CLS : PRINT TAB 9;"LARKEN/M
TERM II"» '"Insert disk con
taining program to be loaded S.
press a key": PAUSE a: CLS : P
R1.\'T #4: CAT "", : PRINT ""Full
name of File (9 charS ) : ";: IN
PUT "Filename? "; LINE n$
44 PRINT #4: LOAD nSCODE VAL "
31500"
48 INPUT "Enter the file lengt
h"»" (approx. if not known)";!:
LET 1=1+VAL "31500": IF 1>VAL
"53966" THEN LET 1=VAL "53966"
50 POKE VAL "611B4",1-25B*CINT
(1/256)): POKE VAL "61 165", INT
(1/256)
55 CLS : GO TO VAL "32"
60 CLS : INPUT "Buffer Name (6
Chars) ";g$: GO TO VAL "10"
80 IF Z$="4" THEN GO TO 48
100 CLS : PRINT AT VAL "17", NOT
PI; "Enter full Disk File Name
": INPUT g$
110 PRINT #4: PRINT g$
115 GO TO 10
150 POKE VAL "23662", VAL "21":
POKE VAL "23663", NOT PI: RETURN
COMMENTS: An old "ZX'er can readily recognize
another by his programming style whi ch minimizes
byte waste. <LEr i=PI/PI> saves four bytes of
memory as opposed to <LETi=1>. George Chambers
started computing with a ZX-80 bacl< in 1981,
graduated to a ZX-81, and then to his TS-2068. He
chartered the Toronto Timex Club in 1982 and has
served in an executive role since. He fs retired
from the engineering dept of Bell Canada, a Cub
Scout Leader, and a vol enteer worker for the
National Institute for the Blind. About the
program: I have tried for a year to cut into MTERM
II and make it dump data to disk. Now George has
dude it where I failed. SALUTE! and Thanks George!
Now you Oliger or Aerco users: The line numbers to
edit and change to your disk syntax are: 6, 7, 27,
40, 44, and 100. Also, <RANDOMIZE USR 100> and
<PRINT '#4> are LARKEN SYNTTAX and each use must be
deleted for other disk systems or cassette. (Ed.)
TS~2068 UP-DATE
1317 Stratford Ave, Panama City, FL 32404
<904 871 4513)
CO^WUN I GATING WITH COMPUTERS
Progress wl H be. the break through during this decade.
EDUCATION & REFERENCE
(GO REFERENCE)
CompuServe provides educational
all ages and educators at all levels.
for students of
For Professionals
Access a variety of curriculum planning resources. Consult proSies
of publishers of specialized educational materials. Join other
educators in specialized Forums
Reference and Research Tools
Enjoy instant access to an electronic version of Grolier's Acadeuac :
American Encyclopedia. Plus, CompuServe's IQuest lets you adjess
nearly 700 other databases from business* commerce,: industry and
academia. College Press Service keeps you current with EducaSon
News Sendees.
Career Planning and Guidance
The College Board and Peterson's College Databases help choose ;
a college, prepare for the SAT, plan an adult student's retum to
academia, and evaluate strategies for securing financial aid.
Support Services For Special Education
A resource for those with handicaps, as well as those who assists,
train, educate or employ the learning disabled and the vision, r
hearing or mobility impaired
Computer, Telecom Gear Makers
Countries
PROJECTED REVENUES
U.S. COMPUTER, BUSINESS
AND TELECOMMUNICATIONS
EQUIPMENT INDUSTRY
($ 8i«on»): V :'
t?oiMoprn"ar!hMr»^
aKreement «ith France Tele-
fcmwth rule of 9 'Z percent fitr
^'^hra"?rfU«U<t» KsdTii
Mareniii lCPRMU under
Equrpment nicstions ToW
,986 leaSS 174.92 3SeS7
1987 198 20 186.00 38420
■ uld* to" iik Brilhlhi Trnri^^^^^
and IVirtUKal.
: al ia'^alrarlcetiiiiivehiiire by the
1988 217.<< ' 200.98 41442
1989 240 40 213.41 4SM1
1990 » 258 69 223.83 48652
Oirectorate Ueneral ofTelecom-
operatinie orxanixation.
1991 281.82 237.22 StSS*
1996' 443.37 311.48 7S*SS
Where ini Go
tlisrwilion in l9sir"Re»-
enues are "^^^^^^ ff"" *>y
Source: Computer i BusioeM |c^JlprTwol _
Lisbon" Po«UHrThr''d"r«l
England-France cable will be a
I. from tlss "ihilVrnt m 1 SW7
ia »2I7.4 billion in IjIRH. An
ntimntfd inalmr in telrcnm
munic«tiona indimtry revrnueii
from flM billion lhi> y«>r to
""-n.^'fbture''Ttlie ciimpi.trr
,h,n in populotion demogro- October .toclt miirkrt CT»h U,l
TutMniitiair'anT <^inln!n"uw m "stimatedTm.rblKm^th^
bifth rates of rml ptmth exper- ywr 111 J t2».T billion » I9»7. i
tenord in the pn.<" U added / BevMiw frem,;!^
The predictinni. are baaed on Mrvicee are ejpected » in-
tr,.nd» thnl e«i»ted before the crease ta $53 3 billion
l^'SorrM^I^'»wt""ucli'link..l
f(ul will lie a repeatere,! ayatem
Mbtt/a per fiber pair, one of the
lareest-cnpacty submarine
links in service.
Cable Will
Hook Up 3
FINANCIAL TRANSACTION SERVICES
(GO BANKING)
Forward-thinking full service banks and brokers use
CompuServe as an electronic gateway for out-of-town or
out-of-state customers, local depositors, and investors.
These services cater to consumers who prefer to serve
themselves, electronically. No lines. No crowds. No traffic.
No distractions.
Banking
•BSril<^?aiCGroSs''th^ country offer online financial and information
';ssr^it^SlSii|vh6^^^ and businesses can review transactions,
ti^hi^fefrftind^y: fiay bills, compare current interest rates and even
exchange electronic mail with bank officers. Millions of people will
do their banking thiS:,way::iri:(the;}futljre.:»IYiei^5^^
effective control ovefSfj^irsdnal::: fiiiaii(i^^:iS£tv65tiiM6^^^^
advantage of importaht''nevv,:t6(Slrihd(cg^ Be;crt^;'df fttiiSsfii^gtSfe
in an all new way.
Quieic & Reilly
, Quick Way brokerage sen/ices from Quick & Reiily Inc., the nations
third largest discount brokerage, include: online purchase and saie
of securities, twenty-four hours a day. current stock and option
prices, portfolio management and automatic tax record keeping.
Transactions are executed immediately when enterea during
business hours and at the start of the nexi business day when
entered evenings and on weekends.
IMax Ule
Tickerscreen is a financial information sen/ice of the discount
brokerage Max Ule & Co. It offers closing NYSE prices, commission
comparisons, and direct order entry of buy and sell orders for
clients of Max Ule.
Unified Maniagement Corporation
Liquid Green is a family of no-load mutual funds provided by Unified
Managenrient Corporation. Online access allows you to manage your
account activities at your convenience, shifting cash reserves in ana
out of funds to take advantage of attractive money market interest
Those first telephone words "Hello,
are you there Watson?" were spoken
shortly after the turn of this century.
About the same time Wilbur and Orvllle
Wright were assembling bicycle parts to
make a flying machine. That is about
the stage of Telecomputing as we enter
year 1988. At least 500 millionaires
will make their fortunes in telecomuting
within the next 10 years as progress
overcomes existing communications
monopol i es.